==> Synchronizing chroot copy [/home/alhp/workspace/chroot/root] -> [build_9f62918d-4d96-48c7-b618-cd1bba5d0f80]...done ==> Making package: curl 8.8.0-1.1 (Thu May 23 11:13:25 2024) ==> Retrieving sources... -> Cloning curl git repo... Cloning into bare repository '/home/alhp/workspace/build/x86-64-v4/curl-8.8.0-1/curl'... ==> Validating source files with sha512sums... curl ... Passed ==> Verifying source file signatures with gpg... curl git repo ... Passed ==> Making package: curl 8.8.0-1.1 (Thu May 23 11:13:43 2024) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Installing missing dependencies... resolving dependencies... looking for conflicting packages... Package (9) New Version Net Change core/debuginfod 0.191-3 0.33 MiB core/expat 2.6.2-1 0.41 MiB core/libmicrohttpd 1.0.1-1 0.59 MiB extra/perl-error 0.17029-5 0.04 MiB extra/perl-mailtools 2.21-7 0.10 MiB extra/perl-timedate 2.33-5 0.08 MiB extra/git 2.45.1-1 27.82 MiB extra/patchelf 0.18.0-3 0.24 MiB extra/valgrind 3.23.0-4 67.46 MiB Total Installed Size: 97.08 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing expat... installing perl-error... installing perl-timedate... installing perl-mailtools... installing git... Optional dependencies for git tk: gitk and git gui openssh: ssh transport and crypto 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] installing patchelf... installing libmicrohttpd... installing debuginfod... Optional dependencies for debuginfod elfutils=0.191: for translations installing valgrind... Optional dependencies for valgrind lib32-glibc: 32-bit ABI support [installed] python: cg_* scripts :: Running post-transaction hooks... (1/2) Warn about old perl modules (2/2) 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:124: installing './compile' configure.ac:436: installing './config.guess' configure.ac:436: installing './config.sub' configure.ac:124: installing './install-sh' configure.ac:130: 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 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 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 dependency style of gcc... gcc3 checking curl version... 8.8.0 checking for httpd... no checking for apache2... no checking for apachectl... 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... /usr/bin/caddy 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... : 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 archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib 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 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) 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 '1401' (raw: '14.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 file API... no checking whether build target supports WIN32 crypto API... no checking for good-to-use Darwin CFLAGS... no checking whether to link macOS CoreFoundation, CoreServices, and SystemConfiguration frameworks... no checking to see if the compiler supports __builtin_available()... no checking whether to support http... yes checking whether to support ftp... yes checking whether to support file... 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 sys/time.h... 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 sys/time.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 Secure Transport... 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 configure: OpenSSL version does not speak QUIC API checking for SRP support in OpenSSL... yes checking for QUIC support in OpenSSL... yes configure: built with one SSL backend checking default CA cert bundle/path... /etc/ssl/certs/ca-certificates.crt checking whether to use builtin CA store of SSL library... no 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_session_block_directions 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 enable Windows native IDN (Windows native builds only)... 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/time.h... (cached) yes checking for sys/select.h... yes checking for sys/socket.h... yes checking for sys/ioctl.h... yes checking for unistd.h... (cached) yes checking for stdlib.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/stat.h... (cached) yes 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 socket.h... no checking for sys/resource.h... yes checking for libgen.h... yes checking for locale.h... yes checking for stdbool.h... yes checking for sys/filio.h... no checking for sys/wait.h... yes checking for setjmp.h... yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking for sys/types.h... (cached) yes checking for sys/time.h... (cached) yes checking for sys/socket.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 in_addr_t... yes checking for struct sockaddr_storage... yes checking for sys/select.h... (cached) yes checking for sys/socket.h... (cached) yes checking for select... yes checking for sys/types.h... (cached) yes checking for sys/socket.h... (cached) yes checking for recv... yes checking for sys/types.h... (cached) yes checking for sys/socket.h... (cached) yes checking for send... yes checking for sys/types.h... (cached) yes checking for sys/socket.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 for sys/types.h... (cached) yes checking for socket.h... (cached) no checking if closesocket can be linked... no checking if closesocket might be used... no checking for sys/types.h... (cached) yes checking for sys/socket.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 can be linked... yes checking if gethostbyname is prototyped... yes checking if gethostbyname is compilable... yes checking if gethostbyname usage allowed... yes checking if gethostbyname might be used... 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 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 net/if.h... (cached) yes checking if if_nametoindex can be linked... yes checking if if_nametoindex is prototyped... yes checking if if_nametoindex is compilable... yes checking if if_nametoindex usage allowed... yes checking if if_nametoindex might be used... yes checking for sys/types.h... (cached) yes checking for sys/socket.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 for sys/types.h... (cached) yes checking for sys/time.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 sys/socket.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 for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/socket.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... no checking if memrchr might be used... no checking for sys/types.h... (cached) yes checking for poll.h... (cached) yes checking for sys/poll.h... (cached) yes checking if poll can be linked... yes checking if poll is prototyped... yes checking if poll is compilable... yes checking if poll seems to work... yes checking if poll usage allowed... yes checking if poll 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 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 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... no checking if strerror_r is POSIX 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 if stricmp can be linked... no checking if stricmp might be used... no checking if strtok_r can be linked... yes checking if strtok_r is prototyped... yes checking if strtok_r is compilable... yes checking if strtok_r usage allowed... yes checking if strtok_r might be used... yes checking if strtoll can be linked... yes checking if strtoll is prototyped... yes checking if strtoll is compilable... yes checking if strtoll usage allowed... yes checking if strtoll might be used... yes checking for gcc options needed to detect all undeclared functions... none needed checking whether getpwuid_r is declared... yes checking for _fseeki64... no checking deeper for _fseeki64... but still no checking for arc4random... yes checking for fnmatch... yes checking for fseeko... yes checking for geteuid... yes checking for getpass_r... no checking deeper for getpass_r... but still 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 deeper for mach_absolute_time... but still no checking for pipe... yes checking for sched_yield... yes checking for sendmsg... yes checking for setlocale... yes checking for setmode... no checking deeper for setmode... but still no checking for setrlimit... yes checking for snprintf... yes checking for utime... yes checking for utimes... yes 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 whether to use POSIX threads for threaded resolver... auto 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 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 for SSL_set0_wbio... yes checking whether to support WebSockets... no 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/certs/Makefile config.status: creating tests/certs/scripts/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/http/config.ini config.status: creating tests/http/Makefile config.status: creating tests/http/clients/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 CPPFLAGS: 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 LIBS: -lnghttp3 -lnghttp2 -lidn2 -lssh2 -lssh2 -lssl -lcrypto -lpsl -lssl -lcrypto -lssl -lcrypto -lgssapi_krb5 -lzstd -lbrotlidec -lz curl version: 8.8.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 fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) 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) WebSockets: no (--enable-websockets) 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 Features: 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 WARNING: HTTP3 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-asyn-ares.lo CC libcurl_la-altsvc.lo CC libcurl_la-amigaos.lo CC libcurl_la-base64.lo CC libcurl_la-asyn-thread.lo CC libcurl_la-bufq.lo CC libcurl_la-c-hyper.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-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_memrchr.lo CC libcurl_la-curl_gssapi.lo CC libcurl_la-curl_multibyte.lo CC libcurl_la-curl_ntlm_core.lo CC libcurl_la-curl_path.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-dict.lo CC libcurl_la-dllmain.lo CC libcurl_la-doh.lo CC libcurl_la-dynbuf.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-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-hostasyn.lo CC libcurl_la-hostip.lo CC libcurl_la-hostip4.lo CC libcurl_la-hostip6.lo CC libcurl_la-hostsyn.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-idn.lo CC libcurl_la-if2ip.lo CC libcurl_la-imap.lo CC libcurl_la-inet_ntop.lo CC libcurl_la-inet_pton.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-netrc.lo CC libcurl_la-multi.lo CC libcurl_la-nonblock.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-strerror.lo CC libcurl_la-strtok.lo CC libcurl_la-strtoofft.lo CC libcurl_la-system_win32.lo CC libcurl_la-telnet.lo CC libcurl_la-tftp.lo CC libcurl_la-timediff.lo CC libcurl_la-timeval.lo CC libcurl_la-transfer.lo CC libcurl_la-url.lo CC libcurl_la-urlapi.lo CC libcurl_la-version.lo CC libcurl_la-version_win32.lo CC libcurl_la-warnless.lo CC libcurl_la-ws.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-oauth2.lo CC vauth/libcurl_la-ntlm_sspi.lo CC vauth/libcurl_la-spnego_sspi.lo CC vauth/libcurl_la-spnego_gssapi.lo CC vauth/libcurl_la-vauth.lo CC vtls/libcurl_la-cipher_suite.lo CC vtls/libcurl_la-bearssl.lo CC vtls/libcurl_la-gtls.lo CC vtls/libcurl_la-hostcheck.lo CC vtls/libcurl_la-mbedtls.lo CC vtls/libcurl_la-keylog.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-sectransp.lo CC vtls/libcurl_la-vtls.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-libssh2.lo CC vssh/libcurl_la-libssh.lo CC vssh/libcurl_la-wolfssh.lo 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 Making all in . make[2]: Entering directory '/startdir/src/build-curl/docs' make[2]: Nothing to be done for 'all-am'. 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_CAPATH.3 RENDER CURLINFO_ACTIVESOCKET.3 RENDER CURLINFO_APPCONNECT_TIME_T.3 RENDER CURLINFO_APPCONNECT_TIME.3 RENDER CURLINFO_CAINFO.3 RENDER CURLINFO_CONNECT_TIME_T.3 RENDER CURLINFO_CERTINFO.3 RENDER CURLINFO_CONDITION_UNMET.3 RENDER CURLINFO_CONNECT_TIME.3 RENDER CURLINFO_CONTENT_LENGTH_DOWNLOAD.3 RENDER CURLINFO_CONN_ID.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_EFFECTIVE_METHOD.3 RENDER CURLINFO_COOKIELIST.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_AVAIL.3 RENDER CURLINFO_LASTSOCKET.3 RENDER CURLINFO_LOCAL_PORT.3 RENDER CURLINFO_LOCAL_IP.3 RENDER CURLINFO_NAMELOOKUP_TIME.3 RENDER CURLINFO_NAMELOOKUP_TIME_T.3 RENDER CURLINFO_NUM_CONNECTS.3 RENDER CURLINFO_OS_ERRNO.3 RENDER CURLINFO_PRETRANSFER_TIME.3 RENDER CURLINFO_PRETRANSFER_TIME_T.3 RENDER CURLINFO_PRIMARY_IP.3 RENDER CURLINFO_PRIMARY_PORT.3 RENDER CURLINFO_PRIVATE.3 RENDER CURLINFO_PROTOCOL.3 RENDER CURLINFO_PROXY_ERROR.3 RENDER CURLINFO_PROXYAUTH_AVAIL.3 RENDER CURLINFO_PROXY_SSL_VERIFYRESULT.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_RESPONSE_CODE.3 RENDER CURLINFO_RETRY_AFTER.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_T.3 RENDER CURLINFO_SIZE_DOWNLOAD.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_TLS_SESSION.3 RENDER CURLINFO_TLS_SSL_PTR.3 RENDER CURLINFO_TOTAL_TIME.3 RENDER CURLINFO_TOTAL_TIME_T.3 RENDER CURLINFO_USED_PROXY.3 RENDER CURLINFO_XFER_ID.3 RENDER CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3 RENDER CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3 RENDER CURLMOPT_MAX_CONCURRENT_STREAMS.3 RENDER CURLMOPT_MAX_HOST_CONNECTIONS.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_SOCKETDATA.3 RENDER CURLMOPT_SOCKETFUNCTION.3 RENDER CURLMOPT_TIMERDATA.3 RENDER CURLMOPT_TIMERFUNCTION.3 RENDER CURLOPT_ABSTRACT_UNIX_SOCKET.3 RENDER CURLOPT_ACCEPT_ENCODING.3 RENDER CURLOPT_ACCEPTTIMEOUT_MS.3 RENDER CURLOPT_ADDRESS_SCOPE.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_ONLY.3 RENDER CURLOPT_CONNECT_TO.3 RENDER CURLOPT_CONNECTTIMEOUT.3 RENDER CURLOPT_CONNECTTIMEOUT_MS.3 RENDER CURLOPT_CONV_FROM_NETWORK_FUNCTION.3 RENDER CURLOPT_CONV_FROM_UTF8_FUNCTION.3 RENDER CURLOPT_CONV_TO_NETWORK_FUNCTION.3 RENDER CURLOPT_COOKIE.3 RENDER CURLOPT_COOKIEFILE.3 RENDER CURLOPT_COOKIEJAR.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_LOCAL_IP6.3 RENDER CURLOPT_DNS_SERVERS.3 RENDER CURLOPT_DNS_SHUFFLE_ADDRESSES.3 RENDER CURLOPT_DNS_USE_GLOBAL_CACHE.3 RENDER CURLOPT_DOH_SSL_VERIFYHOST.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_FRESH_CONNECT.3 RENDER CURLOPT_FORBID_REUSE.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_HEADERDATA.3 RENDER CURLOPT_HEADER.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_HSTSWRITEDATA.3 RENDER CURLOPT_HSTSWRITEFUNCTION.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_INFILESIZE.3 RENDER CURLOPT_IGNORE_CONTENT_LENGTH.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_NEW_DIRECTORY_PERMS.3 RENDER CURLOPT_NETRC_FILE.3 RENDER CURLOPT_NEW_FILE_PERMS.3 RENDER CURLOPT_NOBODY.3 RENDER CURLOPT_NOPROXY.3 RENDER CURLOPT_NOPROGRESS.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_LARGE.3 RENDER CURLOPT_POSTFIELDSIZE.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_PROXY.3 RENDER CURLOPT_PROTOCOLS_STR.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_PROXYHEADER.3 RENDER CURLOPT_PROXYPASSWORD.3 RENDER CURLOPT_PROXYPORT.3 RENDER CURLOPT_PROXYTYPE.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_READFUNCTION.3 RENDER CURLOPT_REDIR_PROTOCOLS.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_NEC.3 RENDER CURLOPT_SOCKS5_GSSAPI_SERVICE.3 RENDER CURLOPT_SSH_AUTH_TYPES.3 RENDER CURLOPT_SSH_COMPRESSION.3 RENDER CURLOPT_SSH_HOSTKEYFUNCTION.3 RENDER CURLOPT_SSH_HOSTKEYDATA.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_CTX_DATA.3 RENDER CURLOPT_SSL_CIPHER_LIST.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_VERIFYHOST.3 RENDER CURLOPT_SSL_VERIFYPEER.3 RENDER CURLOPT_SSL_VERIFYSTATUS.3 RENDER CURLOPT_SSLCERT.3 RENDER CURLOPT_SSLCERT_BLOB.3 RENDER CURLOPT_SSLCERTTYPE.3 RENDER CURLOPT_SSLENGINE.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_NODELAY.3 RENDER CURLOPT_TELNETOPTIONS.3 RENDER CURLOPT_TFTP_BLKSIZE.3 RENDER CURLOPT_TFTP_NO_OPTIONS.3 RENDER CURLOPT_TIMECONDITION.3 RENDER CURLOPT_TIMEOUT.3 RENDER CURLOPT_TIMEOUT_MS.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_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_header.3 RENDER curl_easy_escape.3 RENDER curl_easy_duphandle.3 RENDER curl_easy_cleanup.3 RENDER curl_easy_getinfo.3 RENDER curl_easy_init.3 RENDER curl_easy_option_by_id.3 RENDER curl_easy_nextheader.3 RENDER curl_easy_pause.3 RENDER curl_easy_option_next.3 RENDER curl_easy_option_by_name.3 RENDER curl_easy_perform.3 RENDER curl_easy_recv.3 RENDER curl_easy_reset.3 RENDER curl_easy_send.3 RENDER curl_easy_setopt.3 RENDER curl_easy_strerror.3 RENDER curl_easy_unescape.3 RENDER curl_easy_upkeep.3 RENDER curl_escape.3 RENDER curl_formadd.3 RENDER curl_formfree.3 RENDER curl_formget.3 RENDER curl_free.3 RENDER curl_getdate.3 RENDER curl_getenv.3 RENDER curl_global_cleanup.3 RENDER curl_global_init.3 RENDER curl_global_init_mem.3 RENDER curl_global_trace.3 RENDER curl_global_sslset.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_free.3 RENDER curl_mime_headers.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_wakeup.3 RENDER curl_multi_wait.3 RENDER curl_multi_waitfds.3 RENDER curl_pushheader_bynum.3 RENDER curl_pushheader_byname.3 RENDER curl_share_cleanup.3 RENDER curl_share_init.3 RENDER curl_share_setopt.3 RENDER curl_share_strerror.3 RENDER curl_slist_append.3 RENDER curl_slist_free_all.3 RENDER curl_strequal.3 RENDER curl_strnequal.3 RENDER curl_unescape.3 RENDER curl_url.3 RENDER curl_url_cleanup.3 RENDER curl_url_dup.3 RENDER curl_url_get.3 RENDER curl_url_set.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-env.3 RENDER libcurl-easy.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' Making all in ../docs make[2]: Entering directory '/startdir/src/build-curl/docs' Making all in . make[3]: Entering directory '/startdir/src/build-curl/docs' make[3]: Nothing to be done for 'all-am'. make[3]: Leaving directory '/startdir/src/build-curl/docs' Making all in cmdline-opts make[3]: Entering directory '/startdir/src/build-curl/docs/cmdline-opts' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/startdir/src/build-curl/docs/cmdline-opts' Making all in libcurl make[3]: Entering directory '/startdir/src/build-curl/docs/libcurl' Making all in opts make[4]: Entering directory '/startdir/src/build-curl/docs/libcurl/opts' make[4]: Nothing to be done for 'all'. make[4]: Leaving directory '/startdir/src/build-curl/docs/libcurl/opts' make[4]: Entering directory '/startdir/src/build-curl/docs/libcurl' make[4]: Nothing to be done for 'all-am'. make[4]: Leaving directory '/startdir/src/build-curl/docs/libcurl' make[3]: Leaving directory '/startdir/src/build-curl/docs/libcurl' make[2]: Leaving directory '/startdir/src/build-curl/docs' make[2]: Entering directory '/startdir/src/build-curl/src' CC slist_wc.o CC tool_binmode.o CC tool_cb_hdr.o CC tool_bname.o CC tool_cb_dbg.o CC tool_cb_prg.o CC tool_cb_rea.o CC tool_cb_wrt.o CC tool_dirhie.o CC tool_cb_see.o CC tool_cfgable.o CC tool_doswin.o CC tool_easysrc.o CC tool_filetime.o CC tool_findfile.o CC tool_formparse.o CC tool_getparam.o CC tool_getpass.o CC tool_help.o CC tool_helpers.o echo '#include "tool_hugehelp.h"' >> tool_hugehelp.c CC tool_ipfs.o CC tool_libinfo.o CC tool_listhelp.o CC tool_main.o CC tool_msgs.o CC tool_operate.o CC tool_operhlp.o CC tool_paramhlp.o CC tool_parsecfg.o CC tool_progress.o CC tool_setopt.o CC tool_sleep.o CC tool_strdup.o CC tool_stderr.o CC tool_urlglob.o CC tool_util.o CC tool_vms.o CC tool_writeout.o CC tool_writeout_json.o CC tool_xattr.o CC var.o CC tool_hugehelp.o CC ../lib/base64.o CC ../lib/curl_multibyte.o CC ../lib/dynbuf.o CC ../lib/nonblock.o CC ../lib/strtoofft.o CC ../lib/timediff.o CC ../lib/version_win32.o CC ../lib/warnless.o CCLD curl make[2]: Leaving directory '/startdir/src/build-curl/src' 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: can't install completion script"; else \ /usr/bin/perl /startdir/src/curl/scripts/completion.pl --curl ../src/curl --shell zsh > _curl ; fi if test -z "/usr/bin/perl"; then echo "No perl: can't install completion script"; else \ /usr/bin/perl /startdir/src/curl/scripts/completion.pl --curl ../src/curl --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 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 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 dependency style of gcc... gcc3 checking curl version... 8.8.0 checking for httpd... no checking for apache2... no checking for apachectl... 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... /usr/bin/caddy 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... : 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 archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib 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 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) 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 '1401' (raw: '14.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 file API... no checking whether build target supports WIN32 crypto API... no checking for good-to-use Darwin CFLAGS... no checking whether to link macOS CoreFoundation, CoreServices, and SystemConfiguration frameworks... no checking to see if the compiler supports __builtin_available()... no checking whether to support http... yes checking whether to support ftp... yes checking whether to support file... 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 sys/time.h... 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 sys/time.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 Secure Transport... 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 configure: OpenSSL version does not speak QUIC API checking for SRP support in OpenSSL... yes checking for QUIC support in OpenSSL... yes configure: built with one SSL backend checking default CA cert bundle/path... /etc/ssl/certs/ca-certificates.crt checking whether to use builtin CA store of SSL library... no 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_session_block_directions 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 enable Windows native IDN (Windows native builds only)... 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/time.h... (cached) yes checking for sys/select.h... yes checking for sys/socket.h... yes checking for sys/ioctl.h... yes checking for unistd.h... (cached) yes checking for stdlib.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/stat.h... (cached) yes 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 socket.h... no checking for sys/resource.h... yes checking for libgen.h... yes checking for locale.h... yes checking for stdbool.h... yes checking for sys/filio.h... no checking for sys/wait.h... yes checking for setjmp.h... yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking for sys/types.h... (cached) yes checking for sys/time.h... (cached) yes checking for sys/socket.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 in_addr_t... yes checking for struct sockaddr_storage... yes checking for sys/select.h... (cached) yes checking for sys/socket.h... (cached) yes checking for select... yes checking for sys/types.h... (cached) yes checking for sys/socket.h... (cached) yes checking for recv... yes checking for sys/types.h... (cached) yes checking for sys/socket.h... (cached) yes checking for send... yes checking for sys/types.h... (cached) yes checking for sys/socket.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 for sys/types.h... (cached) yes checking for socket.h... (cached) no checking if closesocket can be linked... no checking if closesocket might be used... no checking for sys/types.h... (cached) yes checking for sys/socket.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 can be linked... yes checking if gethostbyname is prototyped... yes checking if gethostbyname is compilable... yes checking if gethostbyname usage allowed... yes checking if gethostbyname might be used... 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 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 net/if.h... (cached) yes checking if if_nametoindex can be linked... yes checking if if_nametoindex is prototyped... yes checking if if_nametoindex is compilable... yes checking if if_nametoindex usage allowed... yes checking if if_nametoindex might be used... yes checking for sys/types.h... (cached) yes checking for sys/socket.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 for sys/types.h... (cached) yes checking for sys/time.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 sys/socket.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 for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/socket.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... no checking if memrchr might be used... no checking for sys/types.h... (cached) yes checking for poll.h... (cached) yes checking for sys/poll.h... (cached) yes checking if poll can be linked... yes checking if poll is prototyped... yes checking if poll is compilable... yes checking if poll seems to work... yes checking if poll usage allowed... yes checking if poll 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 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 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... no checking if strerror_r is POSIX 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 if stricmp can be linked... no checking if stricmp might be used... no checking if strtok_r can be linked... yes checking if strtok_r is prototyped... yes checking if strtok_r is compilable... yes checking if strtok_r usage allowed... yes checking if strtok_r might be used... yes checking if strtoll can be linked... yes checking if strtoll is prototyped... yes checking if strtoll is compilable... yes checking if strtoll usage allowed... yes checking if strtoll might be used... yes checking for gcc options needed to detect all undeclared functions... none needed checking whether getpwuid_r is declared... yes checking for _fseeki64... no checking deeper for _fseeki64... but still no checking for arc4random... yes checking for fnmatch... yes checking for fseeko... yes checking for geteuid... yes checking for getpass_r... no checking deeper for getpass_r... but still 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 deeper for mach_absolute_time... but still no checking for pipe... yes checking for sched_yield... yes checking for sendmsg... yes checking for setlocale... yes checking for setmode... no checking deeper for setmode... but still no checking for setrlimit... yes checking for snprintf... yes checking for utime... yes checking for utimes... yes 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 whether to use POSIX threads for threaded resolver... auto 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 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 for SSL_set0_wbio... yes checking whether to support WebSockets... no 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/certs/Makefile config.status: creating tests/certs/scripts/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/http/config.ini config.status: creating tests/http/Makefile config.status: creating tests/http/clients/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 CPPFLAGS: 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 LIBS: -lnghttp3 -lnghttp2 -lidn2 -lssh2 -lssh2 -lssl -lcrypto -lpsl -lssl -lcrypto -lssl -lcrypto -lgssapi_krb5 -lzstd -lbrotlidec -lz curl version: 8.8.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 fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) 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) WebSockets: no (--enable-websockets) 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 Features: 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 WARNING: HTTP3 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-amigaos.lo CC libcurl_la-asyn-ares.lo CC libcurl_la-asyn-thread.lo CC libcurl_la-base64.lo CC libcurl_la-bufq.lo CC libcurl_la-bufref.lo CC libcurl_la-c-hyper.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-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_multibyte.lo CC libcurl_la-curl_ntlm_core.lo CC libcurl_la-curl_path.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-dict.lo CC libcurl_la-dllmain.lo CC libcurl_la-doh.lo CC libcurl_la-dynbuf.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-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-hostasyn.lo CC libcurl_la-hostip.lo CC libcurl_la-hostip4.lo CC libcurl_la-hostip6.lo CC libcurl_la-hostsyn.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-idn.lo CC libcurl_la-if2ip.lo CC libcurl_la-imap.lo CC libcurl_la-inet_ntop.lo CC libcurl_la-inet_pton.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-mqtt.lo CC libcurl_la-mprintf.lo CC libcurl_la-multi.lo CC libcurl_la-netrc.lo CC libcurl_la-nonblock.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-strerror.lo CC libcurl_la-strtok.lo CC libcurl_la-strtoofft.lo CC libcurl_la-system_win32.lo CC libcurl_la-telnet.lo CC libcurl_la-tftp.lo CC libcurl_la-timediff.lo CC libcurl_la-timeval.lo CC libcurl_la-transfer.lo CC libcurl_la-url.lo CC libcurl_la-urlapi.lo CC libcurl_la-version.lo CC libcurl_la-version_win32.lo CC libcurl_la-warnless.lo CC libcurl_la-ws.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-bearssl.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-sectransp.lo CC vtls/libcurl_la-vtls.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-wolfssh.lo 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-c-hyper.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_des.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_multibyte.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-dllmain.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostip4.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostsyn.o: no symbols /usr/bin/nm: .libs/libcurl_la-inet_ntop.o: no symbols /usr/bin/nm: .libs/libcurl_la-inet_pton.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-strtok.o: no symbols /usr/bin/nm: .libs/libcurl_la-system_win32.o: no symbols /usr/bin/nm: .libs/libcurl_la-version_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-bearssl.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-sectransp.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 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 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 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 dependency style of gcc... gcc3 checking curl version... 8.8.0 checking for httpd... no checking for apache2... no checking for apachectl... 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... /usr/bin/caddy 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... : 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 archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib 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 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) 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 '1401' (raw: '14.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 file API... no checking whether build target supports WIN32 crypto API... no checking for good-to-use Darwin CFLAGS... no checking whether to link macOS CoreFoundation, CoreServices, and SystemConfiguration frameworks... no checking to see if the compiler supports __builtin_available()... no checking whether to support http... yes checking whether to support ftp... yes checking whether to support file... 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 sys/time.h... 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 sys/time.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 Secure Transport... 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.5 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 builtin CA store of SSL library... no 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_session_block_directions 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 enable Windows native IDN (Windows native builds only)... 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/time.h... (cached) yes checking for sys/select.h... yes checking for sys/socket.h... yes checking for sys/ioctl.h... yes checking for unistd.h... (cached) yes checking for stdlib.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/stat.h... (cached) yes 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 socket.h... no checking for sys/resource.h... yes checking for libgen.h... yes checking for locale.h... yes checking for stdbool.h... yes checking for sys/filio.h... no checking for sys/wait.h... yes checking for setjmp.h... yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking for sys/types.h... (cached) yes checking for sys/time.h... (cached) yes checking for sys/socket.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 in_addr_t... yes checking for struct sockaddr_storage... yes checking for sys/select.h... (cached) yes checking for sys/socket.h... (cached) yes checking for select... yes checking for sys/types.h... (cached) yes checking for sys/socket.h... (cached) yes checking for recv... yes checking for sys/types.h... (cached) yes checking for sys/socket.h... (cached) yes checking for send... yes checking for sys/types.h... (cached) yes checking for sys/socket.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 for sys/types.h... (cached) yes checking for socket.h... (cached) no checking if closesocket can be linked... no checking if closesocket might be used... no checking for sys/types.h... (cached) yes checking for sys/socket.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 can be linked... yes checking if gethostbyname is prototyped... yes checking if gethostbyname is compilable... yes checking if gethostbyname usage allowed... yes checking if gethostbyname might be used... 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 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 net/if.h... (cached) yes checking if if_nametoindex can be linked... yes checking if if_nametoindex is prototyped... yes checking if if_nametoindex is compilable... yes checking if if_nametoindex usage allowed... yes checking if if_nametoindex might be used... yes checking for sys/types.h... (cached) yes checking for sys/socket.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 for sys/types.h... (cached) yes checking for sys/time.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 sys/socket.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 for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/socket.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... no checking if memrchr might be used... no checking for sys/types.h... (cached) yes checking for poll.h... (cached) yes checking for sys/poll.h... (cached) yes checking if poll can be linked... yes checking if poll is prototyped... yes checking if poll is compilable... yes checking if poll seems to work... yes checking if poll usage allowed... yes checking if poll 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 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 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... no checking if strerror_r is POSIX 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 if stricmp can be linked... no checking if stricmp might be used... no checking if strtok_r can be linked... yes checking if strtok_r is prototyped... yes checking if strtok_r is compilable... yes checking if strtok_r usage allowed... yes checking if strtok_r might be used... yes checking if strtoll can be linked... yes checking if strtoll is prototyped... yes checking if strtoll is compilable... yes checking if strtoll usage allowed... yes checking if strtoll might be used... yes checking for gcc options needed to detect all undeclared functions... none needed checking whether getpwuid_r is declared... yes checking for _fseeki64... no checking deeper for _fseeki64... but still no checking for arc4random... yes checking for fnmatch... yes checking for fseeko... yes checking for geteuid... yes checking for getpass_r... no checking deeper for getpass_r... but still 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 deeper for mach_absolute_time... but still no checking for pipe... yes checking for sched_yield... yes checking for sendmsg... yes checking for setlocale... yes checking for setmode... no checking deeper for setmode... but still no checking for setrlimit... yes checking for snprintf... yes checking for utime... yes checking for utimes... yes 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 whether to use POSIX threads for threaded resolver... auto 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 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 support WebSockets... no 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/certs/Makefile config.status: creating tests/certs/scripts/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/http/config.ini config.status: creating tests/http/Makefile config.status: creating tests/http/clients/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 CPPFLAGS: -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 LIBS: -lnghttp2 -lidn2 -lssh2 -lssh2 -lssl -lcrypto -lpsl -lnettle -lgnutls -lgssapi_krb5 -lzstd -lbrotlidec -lz curl version: 8.8.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 fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) 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) WebSockets: no (--enable-websockets) 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 Features: AsynchDNS GSS-API HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile NTLM PSL SPNEGO SSL TLS-SRP UnixSockets alt-svc brotli libz threadsafe 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-ares.lo CC libcurl_la-asyn-thread.lo CC libcurl_la-base64.lo CC libcurl_la-bufq.lo CC libcurl_la-bufref.lo CC libcurl_la-c-hyper.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-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_multibyte.lo CC libcurl_la-curl_ntlm_core.lo CC libcurl_la-curl_path.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-dict.lo CC libcurl_la-dllmain.lo CC libcurl_la-doh.lo CC libcurl_la-dynbuf.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-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-hostasyn.lo CC libcurl_la-hostip.lo CC libcurl_la-hostip6.lo CC libcurl_la-hostip4.lo CC libcurl_la-hostsyn.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-idn.lo CC libcurl_la-if2ip.lo CC libcurl_la-imap.lo CC libcurl_la-inet_ntop.lo CC libcurl_la-inet_pton.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-netrc.lo CC libcurl_la-nonblock.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-strerror.lo CC libcurl_la-strtok.lo CC libcurl_la-strtoofft.lo CC libcurl_la-system_win32.lo CC libcurl_la-telnet.lo CC libcurl_la-tftp.lo CC libcurl_la-timediff.lo CC libcurl_la-timeval.lo CC libcurl_la-transfer.lo CC libcurl_la-url.lo CC libcurl_la-urlapi.lo CC libcurl_la-version.lo CC libcurl_la-version_win32.lo CC libcurl_la-warnless.lo CC libcurl_la-ws.lo CC vauth/libcurl_la-cram.lo CC vauth/libcurl_la-cleartext.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-bearssl.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-sectransp.lo CC vtls/libcurl_la-vtls.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-wolfssh.lo 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-c-hyper.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_multibyte.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-dllmain.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostip4.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostsyn.o: no symbols /usr/bin/nm: .libs/libcurl_la-inet_ntop.o: no symbols /usr/bin/nm: .libs/libcurl_la-inet_pton.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-strtok.o: no symbols /usr/bin/nm: .libs/libcurl_la-system_win32.o: no symbols /usr/bin/nm: .libs/libcurl_la-version_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-bearssl.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-sectransp.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 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' Making all in scripts make[3]: Entering directory '/startdir/src/build-curl/tests/certs/scripts' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/startdir/src/build-curl/tests/certs/scripts' make[3]: Entering directory '/startdir/src/build-curl/tests/certs' make[3]: Nothing to be done for 'all-am'. make[3]: Leaving directory '/startdir/src/build-curl/tests/certs' 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' CC ../../lib/getpart-strtoofft.o CC ../../lib/getpart-nonblock.o CC ../../lib/getpart-mprintf.o CC ../../lib/getpart-timediff.o CC ../../lib/getpart-dynbuf.o CC ../../lib/getpart-warnless.o CC ../../lib/getpart-strdup.o CC ../../lib/getpart-curl_multibyte.o CC ../../lib/getpart-strcase.o CC getpart-getpart.o CC ../../lib/getpart-base64.o CC ../../lib/getpart-memdebug.o CC getpart-testpart.o CC ../../lib/resolve-mprintf.o CC ../../lib/resolve-nonblock.o CC ../../lib/resolve-strtoofft.o CC ../../lib/resolve-warnless.o CC ../../lib/resolve-timediff.o CC ../../lib/resolve-dynbuf.o CC ../../lib/resolve-strcase.o CC ../../lib/resolve-strdup.o CC ../../lib/resolve-curl_multibyte.o CC resolve-getpart.o CC ../../lib/resolve-base64.o CC ../../lib/resolve-memdebug.o CC resolve-util.o CC resolve-resolve.o CC ../../lib/rtspd-mprintf.o CC ../../lib/rtspd-nonblock.o CC ../../lib/rtspd-strtoofft.o CC ../../lib/rtspd-warnless.o CC ../../lib/rtspd-timediff.o CC ../../lib/rtspd-dynbuf.o CC ../../lib/rtspd-strdup.o CC ../../lib/rtspd-strcase.o CC ../../lib/rtspd-curl_multibyte.o CC rtspd-getpart.o CC ../../lib/rtspd-base64.o CC ../../lib/rtspd-memdebug.o CC rtspd-util.o CC ../../lib/sockfilt-mprintf.o CC rtspd-rtspd.o CC ../../lib/sockfilt-nonblock.o CC ../../lib/sockfilt-strtoofft.o CC ../../lib/sockfilt-warnless.o CC ../../lib/sockfilt-timediff.o CC ../../lib/sockfilt-dynbuf.o CC ../../lib/sockfilt-strdup.o CC ../../lib/sockfilt-strcase.o CC ../../lib/sockfilt-curl_multibyte.o CC sockfilt-getpart.o CC ../../lib/sockfilt-base64.o CC ../../lib/sockfilt-memdebug.o CC sockfilt-util.o CC sockfilt-sockfilt.o CC ../../lib/sockfilt-inet_pton.o CC ../../lib/sws-mprintf.o CC ../../lib/sws-nonblock.o CC ../../lib/sws-strtoofft.o CC ../../lib/sws-warnless.o CC ../../lib/sws-timediff.o CC ../../lib/sws-dynbuf.o CC ../../lib/sws-strdup.o CC ../../lib/sws-strcase.o CC ../../lib/sws-curl_multibyte.o CC sws-getpart.o CC ../../lib/sws-base64.o CC ../../lib/sws-memdebug.o CC sws-util.o CC sws-sws.o CC ../../lib/sws-inet_pton.o CC ../../lib/tftpd-mprintf.o CC ../../lib/tftpd-nonblock.o CC ../../lib/tftpd-strtoofft.o CC ../../lib/tftpd-warnless.o CC ../../lib/tftpd-timediff.o CC ../../lib/tftpd-dynbuf.o CC ../../lib/tftpd-strdup.o CC ../../lib/tftpd-strcase.o CC ../../lib/tftpd-curl_multibyte.o CC tftpd-getpart.o CC ../../lib/tftpd-base64.o CC ../../lib/tftpd-memdebug.o CC tftpd-util.o CC tftpd-tftpd.o CC ../../lib/fake_ntlm-mprintf.o CC ../../lib/fake_ntlm-nonblock.o CC ../../lib/fake_ntlm-strtoofft.o CC ../../lib/fake_ntlm-warnless.o CC ../../lib/fake_ntlm-timediff.o CC ../../lib/fake_ntlm-dynbuf.o CC ../../lib/fake_ntlm-strdup.o CC ../../lib/fake_ntlm-strcase.o CC ../../lib/fake_ntlm-curl_multibyte.o CC fake_ntlm-getpart.o CC ../../lib/fake_ntlm-base64.o CC ../../lib/fake_ntlm-memdebug.o CC fake_ntlm-util.o CC fake_ntlm-fake_ntlm.o CC ../../lib/socksd-mprintf.o CC ../../lib/socksd-nonblock.o CC ../../lib/socksd-strtoofft.o CC ../../lib/socksd-warnless.o CC ../../lib/socksd-timediff.o CC ../../lib/socksd-dynbuf.o CC ../../lib/socksd-strdup.o CC ../../lib/socksd-strcase.o CC ../../lib/socksd-curl_multibyte.o CC socksd-getpart.o CC ../../lib/socksd-base64.o CC ../../lib/socksd-memdebug.o CC socksd-util.o CC socksd-socksd.o CC ../../lib/socksd-inet_pton.o CC disabled-disabled.o CC ../../lib/mqttd-mprintf.o CC ../../lib/mqttd-nonblock.o CC ../../lib/mqttd-strtoofft.o CC ../../lib/mqttd-warnless.o CC ../../lib/mqttd-timediff.o CC ../../lib/mqttd-dynbuf.o CC ../../lib/mqttd-strdup.o CC ../../lib/mqttd-strcase.o CC ../../lib/mqttd-curl_multibyte.o CC mqttd-getpart.o CC ../../lib/mqttd-base64.o CC ../../lib/mqttd-memdebug.o CC mqttd-util.o CC mqttd-mqttd.o CC ../../lib/mqttd-inet_pton.o CCLD getpart CCLD resolve CCLD rtspd CCLD sockfilt CCLD sws CCLD tftpd CCLD socksd CCLD fake_ntlm CCLD disabled CCLD mqttd make[2]: Leaving directory '/startdir/src/build-curl/tests/server' Making all in libtest make[2]: Entering directory '/startdir/src/build-curl/tests/libtest' CC chkhostname.o CC ../../lib/curl_gethostname.o CC libauthretry.o CC first.o CC libntlmconnect.o CC testutil.o CC libprereq.o CC testtrace.o CC lib500.o CC lib501.o CC lib502.o CC lib503.o CC lib504.o CC lib505.o CC lib506.o CC lib507.o CC lib508.o CC lib509.o CC lib510.o CC lib511.o CC lib512.o CC lib513.o CC lib514.o CC lib515.o CC lib516.o CC lib517.o CC lib518.o CC lib519.o CC lib520.o CC lib521.o CC lib523.o CC lib524.o CC lib525.o CC lib526-lib526.o CC ../../lib/lib526-timediff.o CC lib526-first.o CC lib526-testutil.o CC ../../lib/lib526-warnless.o CC lib527-lib526.o CC ../../lib/lib527-timediff.o CC lib527-first.o CC lib527-testutil.o CC ../../lib/lib527-warnless.o CC lib529-lib525.o CC ../../lib/lib529-timediff.o CC lib529-first.o CC lib529-testutil.o CC ../../lib/lib529-warnless.o CC ../../lib/lib529-curl_multibyte.o CC lib530.o CC lib532-lib526.o CC ../../lib/lib532-timediff.o CC lib532-first.o CC lib532-testutil.o CC ../../lib/lib532-warnless.o CC lib533.o CC lib536.o CC lib537.o CC lib539.o CC lib540.o CC lib541.o CC lib542.o CC lib543.o CC lib544.o CC ../../lib/lib545-timediff.o CC lib545-lib544.o CC lib545-first.o CC lib547.o CC lib548-lib547.o CC ../../lib/lib548-timediff.o CC lib548-first.o CC lib549.o CC lib552.o CC lib553.o CC lib554.o CC lib555.o CC lib556.o CC lib557.o CC lib558.o CC lib559.o CC lib560.o CC lib562.o CC lib564.o CC lib565-lib510.o CC ../../lib/lib565-timediff.o CC lib565-first.o CC lib566.o CC lib567.o CC lib568.o CC lib569.o CC lib570.o CC lib571.o CC lib572.o CC lib573.o CC lib574.o CC lib575.o CC lib576.o CC lib578.o CC lib579.o CC lib582.o CC lib583.o CC lib584-lib589.o CC ../../lib/lib584-timediff.o CC lib584-first.o CC lib585-lib500.o CC ../../lib/lib585-timediff.o CC lib585-testutil.o CC lib585-first.o CC lib585-testtrace.o CC ../../lib/lib585-curl_multibyte.o CC lib586.o CC lib587-lib554.o CC ../../lib/lib587-timediff.o CC lib587-first.o CC lib589.o CC lib590.o CC lib591.o CC lib597.o CC lib598.o CC lib599.o CC lib643.o CC lib645-lib643.o CC ../../lib/lib645-timediff.o CC lib645-first.o CC lib650.o CC lib651.o CC lib652.o CC lib653.o CC lib654.o CC lib655.o CC lib658.o CC lib659.o CC lib661.o CC lib666.o CC lib667.o CC lib668.o CC lib670-lib670.o CC ../../lib/lib670-timediff.o CC lib670-first.o CC lib670-testutil.o CC ../../lib/lib670-warnless.o CC lib671-lib670.o CC ../../lib/lib671-timediff.o CC lib671-first.o CC lib671-testutil.o CC ../../lib/lib671-warnless.o CC lib672-lib670.o CC ../../lib/lib672-timediff.o CC lib672-first.o CC lib672-testutil.o CC ../../lib/lib672-warnless.o CC lib670.o CC lib674.o CC lib676.o CC lib677.o CC lib678.o CC lib1156.o CC lib1301.o CC lib1500.o CC lib1501.o CC lib1502-lib1502.o CC ../../lib/lib1502-timediff.o CC lib1502-first.o CC lib1502-testutil.o CC ../../lib/lib1502-warnless.o CC lib1503-lib1502.o CC ../../lib/lib1503-timediff.o CC lib1503-first.o CC lib1503-testutil.o CC ../../lib/lib1503-warnless.o CC lib1504-lib1502.o CC ../../lib/lib1504-timediff.o CC lib1504-first.o CC lib1504-testutil.o CC ../../lib/lib1504-warnless.o CC lib1505-lib1502.o CC ../../lib/lib1505-timediff.o CC lib1505-first.o CC lib1505-testutil.o CC ../../lib/lib1505-warnless.o CC lib1506.o CC lib1507.o CC lib1508.o CC lib1509.o CC lib1510.o CC lib1511.o CC lib1512.o CC lib1513.o CC lib1514.o CC lib1515.o CC lib1517.o CC lib1518.o /usr/bin/perl /startdir/src/curl/tests/libtest/mk-lib1521.pl < /startdir/src/curl/include/curl/curl.h > lib1521.c CC lib1520.o CC ../../lib/lib1521-timediff.o CC lib1521-first.o CC lib1522.o CC lib1523.o CC lib1525.o CC lib1526.o CC lib1527.o CC lib1528.o CC lib1529.o CC lib1530.o CC lib1531.o CC lib1532.o CC lib1533.o CC lib1534.o CC lib1535.o CC lib1536.o CC lib1537.o CC lib1538.o CC lib1539-lib1514.o CC ../../lib/lib1539-timediff.o CC lib1539-first.o CC lib1539-testutil.o CC ../../lib/lib1539-warnless.o CC lib1540.o CC lib1541.o CC lib1542.o CC lib1543-lib1518.o CC ../../lib/lib1543-timediff.o CC lib1543-first.o CC lib1545-lib1545.o CC ../../lib/lib1545-timediff.o CC lib1545-first.o CC lib1550.o CC lib1551.o CC lib1552.o CC lib1553.o CC lib1554.o CC lib1555.o CC lib1556.o CC lib1557.o CC lib1558.o CC lib1559.o CC lib1560.o CC lib1564.o CC lib1565.o CC lib1567.o CC lib1568.o CC lib1569.o CC lib1591.o CC lib1592.o CC lib1593.o CC lib1594.o CC lib1596-lib1594.o CC ../../lib/lib1596-timediff.o CC lib1596-first.o CC lib1596-testutil.o CC ../../lib/lib1596-warnless.o CC lib1597.o CC lib1598.o CC lib1662.o CC lib1900.o CC lib1901.o CC lib1903.o CC lib1905.o CC lib1906.o CC lib1907.o CC lib1908.o CC lib1910.o CC lib1911.o CC lib1912.o CC lib1913.o CC lib1915.o CC lib1916.o CC lib1917-lib1916.o CC ../../lib/lib1917-timediff.o CC lib1917-first.o CC ../../lib/lib1917-warnless.o CC lib1918.o CC lib1919.o CC lib1933.o CC lib1934.o CC lib1935.o CC lib1936.o CC lib1937.o CC lib1938.o CC lib1939.o CC lib1940.o CC lib1945.o CC lib1946-lib1940.o CC ../../lib/lib1946-timediff.o CC lib1946-first.o CC lib1947.o CC lib1948.o CC lib1955.o CC lib1956.o CC lib1957.o CC lib1958.o CC lib1959.o CC lib1960.o CC lib1964.o CC lib1970.o CC lib1971.o CC lib1972.o CC lib1973.o CC lib1974.o CC lib1975.o CC lib2301.o CC lib2302.o CC lib2304.o CC lib2305.o CC lib2306.o CC lib2308.o CC lib2402.o CC lib2404.o CC lib2405.o CC lib2502.o CC lib3010.o CC lib3025.o CC lib3026.o CC lib3027.o CC lib3100.o CC lib3101.o CC lib3102.o CC lib3103.o CC libhostname_la-sethostname.lo CC libstubgss_la-stub_gssapi.lo CCLD chkhostname CCLD libauthretry CCLD libntlmconnect CCLD libprereq CCLD lib500 CCLD lib501 CCLD lib502 CCLD lib503 CCLD lib504 CCLD lib505 CCLD lib506 CCLD lib507 CCLD lib508 CCLD lib509 CCLD lib511 CCLD lib510 CCLD lib512 CCLD lib513 CCLD lib514 CCLD lib515 CCLD lib516 CCLD lib517 CCLD lib518 CCLD lib519 CCLD lib520 CCLD lib521 CCLD lib523 CCLD lib524 CCLD lib525 CCLD lib526 CCLD lib527 CCLD lib529 CCLD lib530 CCLD lib532 CCLD lib533 CCLD lib536 CCLD lib537 CCLD lib539 CCLD lib540 CCLD lib541 CCLD lib542 CCLD lib543 CCLD lib544 CCLD lib545 CCLD lib547 CCLD lib548 CCLD lib549 CCLD lib552 CCLD lib553 CCLD lib554 CCLD lib555 CCLD lib556 CCLD lib557 CCLD lib558 CCLD lib559 CCLD lib560 CCLD lib562 CCLD lib564 CCLD lib565 CCLD lib566 CCLD lib567 CCLD lib568 CCLD lib569 CCLD lib570 CCLD lib571 CCLD lib572 CCLD lib573 CCLD lib574 CCLD lib575 CCLD lib576 CCLD lib578 CCLD lib579 CCLD lib582 CCLD lib583 CCLD lib584 CCLD lib585 CCLD lib586 CCLD lib587 CCLD lib589 CCLD lib590 CCLD lib591 CCLD lib597 CCLD lib598 CCLD lib599 CCLD lib643 CCLD lib645 CCLD lib650 CCLD lib651 CCLD lib652 CCLD lib653 CCLD lib654 CCLD lib655 CCLD lib658 CCLD lib659 CCLD lib661 CCLD lib666 CCLD lib667 CCLD lib668 CCLD lib670 CCLD lib671 CCLD lib672 CCLD lib673 CCLD lib674 CCLD lib676 CCLD lib677 CCLD lib678 CCLD lib1156 CCLD lib1301 CCLD lib1500 CCLD lib1501 CCLD lib1502 CCLD lib1503 CCLD lib1504 CCLD lib1505 CCLD lib1506 CCLD lib1507 CCLD lib1508 CCLD lib1509 CCLD lib1510 CCLD lib1511 CCLD lib1512 CCLD lib1513 CCLD lib1514 CCLD lib1515 CCLD lib1517 CCLD lib1518 CCLD lib1520 CC lib1521-lib1521.o CCLD lib1522 CCLD lib1523 CCLD lib1525 CCLD lib1526 CCLD lib1527 CCLD lib1528 CCLD lib1529 CCLD lib1530 CCLD lib1531 CCLD lib1532 CCLD lib1533 CCLD lib1534 CCLD lib1535 CCLD lib1536 CCLD lib1537 CCLD lib1538 CCLD lib1539 CCLD lib1540 CCLD lib1541 CCLD lib1542 CCLD lib1543 CCLD lib1545 CCLD lib1550 CCLD lib1551 CCLD lib1552 CCLD lib1553 CCLD lib1554 CCLD lib1555 CCLD lib1556 CCLD lib1557 CCLD lib1558 CCLD lib1559 CCLD lib1560 CCLD lib1564 CCLD lib1565 CCLD lib1567 CCLD lib1568 CCLD lib1569 CCLD lib1591 CCLD lib1592 CCLD lib1593 CCLD lib1594 CCLD lib1596 CCLD lib1597 CCLD lib1598 CCLD lib1662 CCLD lib1900 CCLD lib1901 CCLD lib1903 CCLD lib1905 CCLD lib1906 CCLD lib1907 CCLD lib1908 CCLD lib1910 CCLD lib1911 CCLD lib1912 CCLD lib1913 CCLD lib1915 CCLD lib1916 CCLD lib1917 CCLD lib1918 CCLD lib1919 CCLD lib1933 CCLD lib1934 CCLD lib1935 CCLD lib1936 CCLD lib1937 CCLD lib1938 CCLD lib1939 CCLD lib1940 CCLD lib1945 CCLD lib1946 CCLD lib1947 CCLD lib1948 CCLD lib1955 CCLD lib1956 CCLD lib1957 CCLD lib1958 CCLD lib1959 CCLD lib1960 CCLD lib1964 CCLD lib1970 CCLD lib1971 CCLD lib1972 CCLD lib1973 CCLD lib1974 CCLD lib1975 CCLD lib2301 CCLD lib2302 CCLD lib2304 CCLD lib2305 CCLD lib2306 CCLD lib2308 CCLD lib2402 CCLD lib2404 CCLD lib2405 CCLD lib2502 CCLD lib3010 CCLD lib3025 CCLD lib3026 CCLD lib3027 CCLD lib3100 CCLD lib3101 CCLD lib3102 CCLD lib3103 CCLD libhostname.la CCLD libstubgss.la CCLD lib1521 make[2]: Leaving directory '/startdir/src/build-curl/tests/libtest' Making all in http make[2]: Entering directory '/startdir/src/build-curl/tests/http' Making all in clients make[3]: Entering directory '/startdir/src/build-curl/tests/http/clients' CC h2-serverpush.o CC h2-upgrade-extreme.o CC ws-data.o CC h2-download.o CC ws-pingpong.o CC tls-session-reuse.o CC h2-pausing.o CC upload-pausing.o CCLD ws-data CCLD ws-pingpong CCLD h2-serverpush CCLD upload-pausing CCLD h2-upgrade-extreme CCLD tls-session-reuse CCLD h2-pausing CCLD h2-download make[3]: Leaving directory '/startdir/src/build-curl/tests/http/clients' make[3]: Entering directory '/startdir/src/build-curl/tests/http' make[3]: Nothing to be done for 'all-am'. make[3]: Leaving directory '/startdir/src/build-curl/tests/http' make[2]: Leaving directory '/startdir/src/build-curl/tests/http' make[2]: Entering directory '/startdir/src/build-curl/tests' make[2]: Nothing to be done for 'all-am'. 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 -j12 !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.8.0 (x86_64-pc-linux-gnu) * libcurl/8.8.0 OpenSSL/3.3.0 zlib/1.3.1 brotli/1.1.0 zstd/1.5.5 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.0 nghttp2/1.62.1 nghttp3/1.3.0 * 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: * Host: * System: Linux arch-nspawn-1908324 6.8.9-arch1-2.1 #1 SMP PREEMPT_DYNAMIC Wed, 08 May 2024 16:06:04 +0000 x86_64 GNU/Linux * OS: linux * Jobs: 12 * Env: Valgrind * Seed: 230515 * 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 1510 DISABLED: test 1512 DISABLED: test 1801 DISABLED: test 2086 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 1300 SKIPPED: curl lacks unittest support test 1302 SKIPPED: curl lacks unittest support test 1303 SKIPPED: curl lacks unittest support test 1310 SKIPPED: curl lacks NTLM_WB support test 1454 SKIPPED: curl has ipv6 support test 1560 SKIPPED: curl lacks ldap support Warning: test1592 result is ignored due to flaky Warning: test1592 result is ignored due to timing-dependent 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 2500 SKIPPED: curl lacks nghttpx-h3 support test 2503 SKIPPED: curl lacks nghttpx-h3 support Runner 75071 starting Runner 75069 starting Runner 75066 starting Runner 75072 starting Runner 75065 starting Runner 75070 starting Runner 75067 starting Runner 75064 starting Runner 75068 starting Runner 75062 starting Runner 75063 starting Runner 75061 starting CMD (0): ../src/curl --max-time 13 --output log/8/http_verify.out --silent --verbose --globoff "http://127.0.0.1:33791/verifiedserver" 2>log/8/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/7/http_verify.out --silent --verbose --globoff "http://127.0.0.1:35853/verifiedserver" 2>log/7/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/4/http_verify.out --silent --verbose --globoff "http://127.0.0.1:41947/verifiedserver" 2>log/4/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/10/http_verify.out --silent --verbose --globoff "http://127.0.0.1:36145/verifiedserver" 2>log/10/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/1/http_verify.out --silent --verbose --globoff "http://127.0.0.1:39283/verifiedserver" 2>log/1/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/12/http_verify.out --silent --verbose --globoff "http://127.0.0.1:44175/verifiedserver" 2>log/12/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/5/http_verify.out --silent --verbose --globoff "http://127.0.0.1:33519/verifiedserver" 2>log/5/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/6/http_verify.out --silent --verbose --globoff "http://127.0.0.1:41583/verifiedserver" 2>log/6/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/9/http_verify.out --silent --verbose --globoff "http://127.0.0.1:40247/verifiedserver" 2>log/9/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/2/http_verify.out --silent --verbose --globoff "http://127.0.0.1:44205/verifiedserver" 2>log/2/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/11/http_verify.out --silent --verbose --globoff "http://127.0.0.1:35843/verifiedserver" 2>log/11/http_verify.log CMD (0): ../src/curl --max-time 13 --output log/3/http_verify.out --silent --verbose --globoff "http://127.0.0.1:46313/verifiedserver" 2>log/3/http_verify.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/11/valgrind2 ../src/curl -q --output log/11/curl2.out --include --trace-ascii log/11/trace2 --trace-time -u fake:user http://127.0.0.1:35843/2 > log/11/stdout2 2> log/11/stderr2 CMD (33792): ../libtool --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/valgrind4 ../src/curl -q --output log/9/curl4.out --include --trace-ascii log/9/trace4 --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:40247/4 http://127.0.0.1:40247/4 > log/9/stdout4 2> log/9/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/8/valgrind5 ../src/curl -q --output log/8/curl5.out --include --trace-ascii log/8/trace5 --trace-time http://127.0.0.1:33791/we/want/that/page/5#5 -x 127.0.0.1:33791 > log/8/stdout5 2> log/8/stderr5 startnew: perl -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: ../src/curl --max-time 13 --output log/11/http_verify.out --silent --verbose --globoff "http://127.0.0.1:35843/verifiedserver" 2>log/11/http_verify.log RUN: HTTP server is on PID 75073 port 35843 * pid http => 75073 75073 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/11/valgrind2 ../src/curl -q --output log/11/curl2.out --include --trace-ascii log/11/trace2 --trace-time -u fake:user http://127.0.0.1:35843/2 > log/11/stdout2 2> log/11/stderr2 2: 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 2 === Start of file http_server.log 11:15:41.291749 Running HTTP IPv4 version on port 35843 11:15:41.291818 Wrote pid 75073 to log/11/server/http_server.pid 11:15:41.291840 Wrote port 35843 to log/11/server/http_server.port 11:15:42.301138 ====> Client connect 11:15:42.301154 accept_connection 3 returned 4 11:15:42.301165 accept_connection 3 returned 0 11:15:42.301176 Read 92 bytes 11:15:42.301188 Process 92 bytes request 11:15:42.301203 Got request: GET /verifiedserver HTTP/1.1 11:15:42.301210 Are-we-friendly question received 11:15:42.301228 Wrote request (92 bytes) input to log/11/server.input 11:15:42.301244 Identifying ourselves as friends 11:15:42.301303 Response sent (56 bytes) and written to log/11/server.response 11:15:42.301311 special request received, no persistency 11:15:42.301318 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35843... * Connected to 127.0.0.1 (127.0.0.1) port 35843 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35843 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75073 === End of file http_verify.out === Start of file server.cmd Testnum 2 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75073 === End of file server.response === Start of file valgrind2 ==75336== ==75336== Process terminating with default action of signal 4 (SIGILL) ==75336== Illegal opcode at address 0x10B06D ==75336== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75336== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2 startnew: perl -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: ../src/curl --max-time 13 --output log/9/http_verify.out --silent --verbose --globoff "http://127.0.0.1:40247/verifiedserver" 2>log/9/http_verify.log RUN: HTTP server is on PID 75074 port 40247 * pid http => 75074 75074 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/9/valgrind4 ../src/curl -q --output log/9/curl4.out --include --trace-ascii log/9/trace4 --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:40247/4 http://127.0.0.1:40247/4 > log/9/stdout4 2> log/9/stderr4 4: 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 4 === Start of file http_server.log 11:15:41.291321 Running HTTP IPv4 version on port 40247 11:15:41.291389 Wrote pid 75074 to log/9/server/http_server.pid 11:15:41.291412 Wrote port 40247 to log/9/server/http_server.port 11:15:42.299741 ====> Client connect 11:15:42.299756 accept_connection 3 returned 4 11:15:42.299768 accept_connection 3 returned 0 11:15:42.299779 Read 92 bytes 11:15:42.299789 Process 92 bytes request 11:15:42.299803 Got request: GET /verifiedserver HTTP/1.1 11:15:42.299810 Are-we-friendly question received 11:15:42.299830 Wrote request (92 bytes) input to log/9/server.input 11:15:42.299846 Identifying ourselves as friends 11:15:42.299900 Response sent (56 bytes) and written to log/9/server.response 11:15:42.299909 special request received, no persistency 11:15:42.299916 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:40247... * Connected to 127.0.0.1 (127.0.0.1) port 40247 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40247 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75074 === End of file http_verify.out === Start of file server.cmd Testnum 4 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75074 === End of file server.response === Start of file valgrind4 ==75316== ==75316== Process terminating with default action of signal 4 (SIGILL) ==75316== Illegal opcode at address 0x10B06D ==75316== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75316== by 0x10B06D: main (tool_main.c:234) === End of file valgrind4 startnew: perl -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: ../src/curl --max-time 13 --output log/8/http_verify.out --silent --verbose --globoff "http://127.0.0.1:33791/verifiedserver" 2>log/8/http_verify.log RUN: HTTP server is on PID 75081 port 33791 * pid http => 75081 75081 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/8/valgrind5 ../src/curl -q --output log/8/curl5.out --include --trace-ascii log/8/trace5 --trace-time http://127.0.0.1:33791/we/want/that/page/5#5 -x 127.0.0.1:33791 > log/8/stdout5 2> log/8/stderr5 5: 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 5 === Start of file http_server.log 11:15:41.291833 Running HTTP IPv4 version on port 33791 11:15:41.291903 Wrote pid 75081 to log/8/server/http_server.pid 11:15:41.291925 Wrote port 33791 to log/8/server/http_server.port 11:15:42.298060 ====> Client connect 11:15:42.298075 accept_connection 3 returned 4 11:15:42.298086 accept_connection 3 returned 0 11:15:42.298097 Read 92 bytes 11:15:42.298104 Process 92 bytes request 11:15:42.298118 Got request: GET /verifiedserver HTTP/1.1 11:15:42.298124 Are-we-friendly question received 11:15:42.298142 Wrote request (92 bytes) input to log/8/server.input 11:15:42.298158 Identifying ourselves as friends 11:15:42.298209 Response sent (56 bytes) and written to log/8/server.response 11:15:42.298217 special request received, no persistency 11:15:42.298223 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33791... * Connected to 127.0.0.1 CMD (33792): ../libtool --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/valgrind14 ../src/curl -q --output log/9/curl14.out --include --trace-ascii log/9/trace14 --trace-time http://127.0.0.1:40247/want/14 -i --head > log/9/stdout14 2> log/9/stderr14 CMD (33792): ../libtool --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/valgrind13 ../src/curl -q --output log/11/curl13.out --include --trace-ascii log/11/trace13 --trace-time http://127.0.0.1:35843/want/13 -X DELETE > log/11/stdout13 2> log/11/stderr13 CMD (33792): ../libtool --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/valgrind11 ../src/curl -q --output log/2/curl11.out --include --trace-ascii log/2/trace11 --trace-time http://127.0.0.1:44205/want/11 -L > log/2/stdout11 2> log/2/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/10/valgrind3 ../src/curl -q --output log/10/curl3.out --include --trace-ascii log/10/trace3 --trace-time -d "fooo=mooo&pooo=clue&doo=%20%20%20++++" -u "fake:-user" http://127.0.0.1:36145/3 > log/10/stdout3 2> log/10/stderr3 CMD (33792): ../libtool --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/valgrind9 ../src/curl -q --output log/4/curl9.out --include --trace-ascii log/4/trace9 --trace-time http://127.0.0.1:41947/we/want/9 -F name=daniel -F tool=curl -F file=@log/4/test9.txt > log/4/stdout9 2> log/4/stderr9 (127.0.0.1) port 33791 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33791 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75081 === End of file http_verify.out === Start of file server.cmd Testnum 5 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75081 === End of file server.response === Start of file valgrind5 ==75272== ==75272== Process terminating with default action of signal 4 (SIGILL) ==75272== Illegal opcode at address 0x10B06D ==75272== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75272== by 0x10B06D: main (tool_main.c:234) === End of file valgrind5 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/9/valgrind14 ../src/curl -q --output log/9/curl14.out --include --trace-ascii log/9/trace14 --trace-time http://127.0.0.1:40247/want/14 -i --head > log/9/stdout14 2> log/9/stderr14 14: 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 14 === Start of file server.cmd Testnum 14 === End of file server.cmd === Start of file valgrind14 ==75900== ==75900== Process terminating with default action of signal 4 (SIGILL) ==75900== Illegal opcode at address 0x10B06D ==75900== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75900== by 0x10B06D: main (tool_main.c:234) === End of file valgrind14 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/11/valgrind13 ../src/curl -q --output log/11/curl13.out --include --trace-ascii log/11/trace13 --trace-time http://127.0.0.1:35843/want/13 -X DELETE > log/11/stdout13 2> log/11/stderr13 13: 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 13 === Start of file server.cmd Testnum 13 === End of file server.cmd === Start of file valgrind13 ==75899== ==75899== Process terminating with default action of signal 4 (SIGILL) ==75899== Illegal opcode at address 0x10B06D ==75899== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75899== by 0x10B06D: main (tool_main.c:234) === End of file valgrind13 startnew: perl -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: ../src/curl --max-time 13 --output log/2/http_verify.out --silent --verbose --globoff "http://127.0.0.1:44205/verifiedserver" 2>log/2/http_verify.log RUN: HTTP server is on PID 75082 port 44205 * pid http => 75082 75082 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/2/valgrind11 ../src/curl -q --output log/2/curl11.out --include --trace-ascii log/2/trace11 --trace-time http://127.0.0.1:44205/want/11 -L > log/2/stdout11 2> log/2/stderr11 11: 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 11 === Start of file http_server.log 11:15:41.292064 Running HTTP IPv4 version on port 44205 11:15:41.292122 Wrote pid 75082 to log/2/server/http_server.pid 11:15:41.292138 Wrote port 44205 to log/2/server/http_server.port 11:15:42.297929 ====> Client connect 11:15:42.297944 accept_connection 3 returned 4 11:15:42.297954 accept_connection 3 returned 0 11:15:42.297965 Read 92 bytes 11:15:42.297974 Process 92 bytes request 11:15:42.297986 Got request: GET /verifiedserver HTTP/1.1 11:15:42.297992 Are-we-friendly question received 11:15:42.298010 Wrote request (92 bytes) input to log/2/server.input 11:15:42.298025 Identifying ourselves as friends 11:15:42.298085 Response sent (56 bytes) and written to log/2/server.response 11:15:42.298093 special request received, no persistency 11:15:42.298100 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:44205... * Connected to 127.0.0.1 (127.0.0.1) port 44205 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:44205 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75082 === End of file http_verify.out === Start of file server.cmd Testnum 11 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75082 === End of file server.response === Start of file valgrind11 ==75328== ==75328== Process terminating with default action of signal 4 (SIGILL) ==75328== Illegal opcode at address 0x10B06D ==75328== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75328== by 0x10B06D: main (tool_main.c:234) === End of file valgrind11 startnew: perl -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: ../src/curl --max-time 13 --output log/10/http_verify.out --silent --verbose --globoff "http://127.0.0.1:36145/verifiedserver" 2>log/10/http_verify.log RUN: HTTP server is on PID 75078 port 36145 * pid http => 75078 75078 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/10/valgrind3 ../src/curl -q --output log/10/curl3.out --include --trace-ascii log/10/trace3 --trace-time -d "fooo=mooo&pooo=clue&doo=%20%20%20++++" -u "fake:-user" http://127.0.0.1:36145/3 > log/10/stdout3 2> log/10/stderr3 3: 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 3 === Start of file http_server.log 11:15:41.295965 Running HTTP IPv4 version on port 36145 11:15:41.296020 Wrote pid 75078 to log/10/server/http_server.pid 11:15:41.296037 Wrote port 36145 to log/10/server/http_server.port 11:15:42.295540 ====> Client connect 11:15:42.295554 accept_connection 3 returned 4 11:15:42.295565 accept_connection 3 returned 0 11:15:42.295747 Read 92 bytes 11:15:42.295763 Process 92 bytes request 11:15:42.295778 Got request: GET /verifiedserver HTTP/1.1 11:15:42.295785 Are-we-friendly question received 11:15:42.295807 Wrote request (92 bytes) input to log/10/server.input 11:15:42.295822 Identifying ourselves as friends 11:15:42.295876 Response sent (56 bytes) and written to log/10/server.response 11:15:42.295884 special request received, no persistency 11:15:42.295890 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36145... * Connected to 127.0.0.1 (127.0.0.1) port 36145 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36145 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === 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/12/valgrind1 ../src/curl -q --output log/12/curl1.out --include --trace-ascii log/12/trace1 --trace-time http://127.0.0.1:44175/1 > log/12/stdout1 2> log/12/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/8/valgrind15 ../src/curl -q --include --trace-ascii log/8/trace15 --trace-time http://127.0.0.1:33791/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n" > log/8/stdout15 2> log/8/stderr15 nd of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75078 === End of file http_verify.out === Start of file server.cmd Testnum 3 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75078 === End of file server.response === Start of file valgrind3 ==75273== ==75273== Process terminating with default action of signal 4 (SIGILL) ==75273== Illegal opcode at address 0x10B06D ==75273== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75273== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3 startnew: perl -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: ../src/curl --max-time 13 --output log/4/http_verify.out --silent --verbose --globoff "http://127.0.0.1:41947/verifiedserver" 2>log/4/http_verify.log RUN: HTTP server is on PID 75080 port 41947 * pid http => 75080 75080 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/4/valgrind9 ../src/curl -q --output log/4/curl9.out --include --trace-ascii log/4/trace9 --trace-time http://127.0.0.1:41947/we/want/9 -F name=daniel -F tool=curl -F file=@log/4/test9.txt > log/4/stdout9 2> log/4/stderr9 9: 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 9 === Start of file http_server.log 11:15:41.291669 Running HTTP IPv4 version on port 41947 11:15:41.291746 Wrote pid 75080 to log/4/server/http_server.pid 11:15:41.291768 Wrote port 41947 to log/4/server/http_server.port 11:15:42.296200 ====> Client connect 11:15:42.296214 accept_connection 3 returned 4 11:15:42.296225 accept_connection 3 returned 0 11:15:42.296235 Read 92 bytes 11:15:42.296242 Process 92 bytes request 11:15:42.296255 Got request: GET /verifiedserver HTTP/1.1 11:15:42.296261 Are-we-friendly question received 11:15:42.296280 Wrote request (92 bytes) input to log/4/server.input 11:15:42.296297 Identifying ourselves as friends 11:15:42.296352 Response sent (56 bytes) and written to log/4/server.response 11:15:42.296360 special request received, no persistency 11:15:42.296366 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41947... * Connected to 127.0.0.1 (127.0.0.1) port 41947 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41947 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75080 === End of file http_verify.out === Start of file server.cmd Testnum 9 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75080 === End of file server.response === Start of file test9.txt foo- This is a moo- bar === End of file test9.txt === Start of file valgrind9 ==75270== ==75270== Process terminating with default action of signal 4 (SIGILL) ==75270== Illegal opcode at address 0x10B06D ==75270== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75270== by 0x10B06D: main (tool_main.c:234) === End of file valgrind9 startnew: perl -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: ../src/curl --max-time 13 --output log/12/http_verify.out --silent --verbose --globoff "http://127.0.0.1:44175/verifiedserver" 2>log/12/http_verify.log RUN: HTTP server is on PID 75076 port 44175 * pid http => 75076 75076 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/12/valgrind1 ../src/curl -q --output log/12/curl1.out --include --trace-ascii log/12/trace1 --trace-time http://127.0.0.1:44175/1 > log/12/stdout1 2> log/12/stderr1 1: 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 1 === Start of file http_server.log 11:15:41.289619 Running HTTP IPv4 version on port 44175 11:15:41.289714 Wrote pid 75076 to log/12/server/http_server.pid 11:15:41.289734 Wrote port 44175 to log/12/server/http_server.port 11:15:42.300402 ====> Client connect 11:15:42.300417 accept_connection 3 returned 4 11:15:42.300429 accept_connection 3 returned 0 11:15:42.300440 Read 92 bytes 11:15:42.300448 Process 92 bytes request 11:15:42.300463 Got request: GET /verifiedserver HTTP/1.1 11:15:42.300470 Are-we-friendly question received 11:15:42.300489 Wrote request (92 bytes) input to log/12/server.input 11:15:42.300507 Identifying ourselves as friends 11:15:42.300564 Response sent (56 bytes) and written to log/12/server.response 11:15:42.300572 special request received, no persistency 11:15:42.300579 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:44175... * Connected to 127.0.0.1 (127.0.0.1) port 44175 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:44175 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75076 === End of file http_verify.out === Start of file server.cmd Testnum 1 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75076 === End of file server.response === Start of file valgrind1 ==75281== ==75281== Process terminating with default action of signal 4 (SIGILL) ==75281== Illegal opcode at address 0x10B06D ==75281== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75281== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1 CMD (33792): ../libtool --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/valgrind7 ../src/curl -q --output log/6/curl7.out --include --trace-ascii log/6/trace7 --trace-time http://127.0.0.1:41583/we/want/7 -b none -D log/6/heads7.txt > log/6/stdout7 2> log/6/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/9/valgrind16 ../src/curl -q --output log/9/curl16.out --include --trace-ascii log/9/trace16 --trace-time -U fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong -x 127.0.0.1:40247 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/11/valgrind17 ../src/curl -q --output log/11/curl17.out --include --trace-ascii log/11/trace17 --trace-time -K - 127.0.0.1:35843/that.site.com/17 log/11/stdout17 2> log/11/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/2/valgrind18 ../src/curl -q --include --trace-ascii log/2/trace18 --trace-time "127.0.0.1:44205/{18,180002,180003}" > log/2/stdout18 2> log/2/stderr18 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/8/valgrind15 ../src/curl -q --include --trace-ascii log/8/trace15 --trace-time http://127.0.0.1:33791/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n" > log/8/stdout15 2> log/8/stderr15 15: stdout FAILED: --- log/8/check-expected 2024-05-23 11:15:45.016335367 +0200 +++ log/8/check-generated 2024-05-23 11:15:45.016335367 +0200 @@ -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:33791/want/15 200 26[LF] == Contents of files in the log/8/ 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:33791/want/15 200 26[LF] === End of file check-expected === Start of file server.cmd Testnum 15 === End of file server.cmd === Start of file valgrind15 ==75995== ==75995== Process terminating with default action of signal 4 (SIGILL) ==75995== Illegal opcode at address 0x10B06D ==75995== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75995== by 0x10B06D: main (tool_main.c:234) === End of file valgrind15 startnew: perl -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: ../src/curl --max-time 13 --output log/6/http_verify.out --silent --verbose --globoff "http://127.0.0.1:41583/verifiedserver" 2>log/6/http_verify.log RUN: HTTP server is on PID 75075 port 41583 * pid http => 75075 75075 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/6/valgrind7 ../src/curl -q --output log/6/curl7.out --include --trace-ascii log/6/trace7 --trace-time http://127.0.0.1:41583/we/want/7 -b none -D log/6/heads7.txt > log/6/stdout7 2> log/6/stderr7 7: 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 7 === Start of file http_server.log 11:15:41.291357 Running HTTP IPv4 version on port 41583 11:15:41.291430 Wrote pid 75075 to log/6/server/http_server.pid 11:15:41.291453 Wrote port 41583 to log/6/server/http_server.port 11:15:42.296972 ====> Client connect 11:15:42.296986 accept_connection 3 returned 4 11:15:42.296996 accept_connection 3 returned 0 11:15:42.297004 Read 92 bytes 11:15:42.297011 Process 92 bytes request 11:15:42.297025 Got request: GET /verifiedserver HTTP/1.1 11:15:42.297030 Are-we-friendly question received 11:15:42.297046 Wrote request (92 bytes) input to log/6/server.input 11:15:42.297064 Identifying ourselves as friends 11:15:42.297117 Response sent (56 bytes) and written to log/6/server.response 11:15:42.297123 special request received, no persistency 11:15:42.297129 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41583... * Connected to 127.0.0.1 (127.0.0.1) port 41583 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41583 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75075 === End of file http_verify.out === Start of file server.cmd Testnum 7 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75075 === End of file server.response === Start of file valgrind7 ==75300== ==75300== Process terminating with default action of signal 4 (SIGILL) ==75300== Illegal opcode at address 0x10B06D ==75300== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75300== by 0x10B06D: main (tool_main.c:234) === End of file valgrind7 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-time -U fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong -x 127.0.0.1:40247 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 server.cmd Testnum 16 === End of file server.cmd === Start of file valgrind16 ==76041== ==76041== Process terminating with default action of signal 4 (SIGILL) ==76041== Illegal opcode at address 0x10B06D ==76041== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76041== by 0x10B06D: main (tool_main.c:234) === End of file valgrind16 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/11/valgrind17 ../src/curl -q --output log/11/curl17.out --include --trace-ascii log/11/trace17 --trace-time -K - 127.0.0.1:35843/that.site.com/17 log/11/stdout17 2> log/11/stderr17 17: 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 17 === 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 ==76043== ==76043== Process terminating with default action of signal 4 (SIGILL) ==76043== Illegal opcode at address 0x10B06D ==76043== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76043== by 0x10B06D: main (tool_main.c:234) === End of file valgrind17 CMD (33792): ../libtool --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/valgrind6 ../src/curl -q --output log/7/curl6.out --include --trace-ascii log/7/trace6 --trace-time http://127.0.0.1:35853/we/want/that/page/6 -b "name=contents;name2=content2" -b name3=content3 > log/7/stdout6 2> log/7/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/4/valgrind20 ../src/curl -q --output log/4/curl20.out --include --trace-ascii log/4/trace20 --trace-time --ipv4 non-existing-host.haxx.se. > log/4/stdout20 2> log/4/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/10/valgrind19 ../src/curl -q --output log/10/curl19.out --include --trace-ascii log/10/trace19 --trace-time --trace-config all 127.0.0.1:47 > log/10/stdout19 2> log/10/stderr19 CMD (33792): ../libtool --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/valgrind8 ../src/curl -q --output log/5/curl8.out --include --trace-ascii log/5/trace8 --trace-time http://127.0.0.1:33519/we/want/8 -b log/5/heads8.txt > log/5/stdout8 2> log/5/stderr8 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/2/valgrind18 ../src/curl -q --include --trace-ascii log/2/trace18 --trace-time "127.0.0.1:44205/{18,180002,180003}" > log/2/stdout18 2> log/2/stderr18 18: stdout FAILED: --- log/2/check-expected 2024-05-23 11:15:45.139671233 +0200 +++ log/2/check-generated 2024-05-23 11:15:45.139671233 +0200 @@ -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/2/ 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 server.cmd Testnum 18 === End of file server.cmd === Start of file valgrind18 ==76137== ==76137== Process terminating with default action of signal 4 (SIGILL) ==76137== Illegal opcode at address 0x10B06D ==76137== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76137== by 0x10B06D: main (tool_main.c:234) === End of file valgrind18 startnew: perl -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: ../src/curl --max-time 13 --output log/7/http_verify.out --silent --verbose --globoff "http://127.0.0.1:35853/verifiedserver" 2>log/7/http_verify.log RUN: HTTP server is on PID 75079 port 35853 * pid http => 75079 75079 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/7/valgrind6 ../src/curl -q --output log/7/curl6.out --include --trace-ascii log/7/trace6 --trace-time http://127.0.0.1:35853/we/want/that/page/6 -b "name=contents;name2=content2" -b name3=content3 > log/7/stdout6 2> log/7/stderr6 6: 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 6 === Start of file http_server.log 11:15:41.291747 Running HTTP IPv4 version on port 35853 11:15:41.291819 Wrote pid 75079 to log/7/server/http_server.pid 11:15:41.291839 Wrote port 35853 to log/7/server/http_server.port 11:15:42.297015 ====> Client connect 11:15:42.297029 accept_connection 3 returned 4 11:15:42.297040 accept_connection 3 returned 0 11:15:42.297049 Read 92 bytes 11:15:42.297056 Process 92 bytes request 11:15:42.297075 Got request: GET /verifiedserver HTTP/1.1 11:15:42.297081 Are-we-friendly question received 11:15:42.297098 Wrote request (92 bytes) input to log/7/server.input 11:15:42.297114 Identifying ourselves as friends 11:15:42.297168 Response sent (56 bytes) and written to log/7/server.response 11:15:42.297176 special request received, no persistency 11:15:42.297182 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35853... * Connected to 127.0.0.1 (127.0.0.1) port 35853 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35853 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75079 === End of file http_verify.out === Start of file server.cmd Testnum 6 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75079 === End of file server.response === Start of file valgrind6 ==75271== ==75271== Process terminating with default action of signal 4 (SIGILL) ==75271== Illegal opcode at address 0x10B06D ==75271== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75271== by 0x10B06D: main (tool_main.c:234) === End of file valgrind6 * 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/4/valgrind20 ../src/curl -q --output log/4/curl20.out --include --trace-ascii log/4/trace20 --trace-time --ipv4 non-existing-host.haxx.se. > log/4/stdout20 2> log/4/stderr20 curl returned 132, when expecting 6 20: exit FAILED == Contents of files in the log/4/ dir after test 20 === Start of file server.cmd Testnum 20 === End of file server.cmd === Start of file valgrind20 ==76190== ==76190== Process terminating with default action of signal 4 (SIGILL) ==76190== Illegal opcode at address 0x10B06D ==76190== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76190== by 0x10B06D: main (tool_main.c:234) === End of file valgrind20 * 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/10/valgrind19 ../src/curl -q --output log/10/curl19.out --include --trace-ascii log/10/trace19 --trace-time --trace-config all 127.0.0.1:47 > log/10/stdout19 2> log/10/stderr19 curl returned 132, when expecting 7 19: exit FAILED == Contents of files in the log/10/ dir after test 19 === Start of file server.cmd Testnum 19 === End of file server.cmd === Start of file valgrind19 ==76189== ==76189== Process terminating with default action of signal 4 (SIGILL) ==76189== Illegal opcode at address 0x10B06D ==76189== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76189== by 0x10B06D: main (tool_main.c:234) === End of file valgrind19 startnew: perl -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: ../src/curl --max-time 13 --output log/5/http_verify.out --silent --verbose --globoff "http://127.0.0.1:33519/verifiedserver" 2>log/5/http_verify.log RUN: HTTP server is on PID 75077 port 33519 * pid http => 75077 75077 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/5/valgrind8 ../src/curl -q --output log/5/curl8.out --include --trace-ascii log/5/trace8 --trace-time http://127.0.0.1:33519/we/want/8 -b log/5/heads8.txt > log/5/stdout8 2> log/5/stderr8 8: 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 8 === 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 CMD (33792): ../libtool --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/valgrind10 ../src/curl -q --output log/3/curl10.out --include --trace-ascii log/3/trace10 --trace-time http://127.0.0.1:46313/we/want/10 -T log/3/test10.txt > log/3/stdout10 2> log/3/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/12/valgrind21 ../src/curl -q --output log/12/curl21.out --include --trace-ascii log/12/trace21 --trace-time -I -d FOOO -F moo=moo localhost > log/12/stdout21 2> log/12/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/1/valgrind12 ../src/curl -q --output log/1/curl12.out --include --trace-ascii log/1/trace12 --trace-time http://127.0.0.1:39283/want/12 -r 100-200 > log/1/stdout12 2> log/1/stderr12 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 11:15:41.291829 Running HTTP IPv4 version on port 33519 11:15:41.291902 Wrote pid 75077 to log/5/server/http_server.pid 11:15:41.291927 Wrote port 33519 to log/5/server/http_server.port 11:15:42.294898 ====> Client connect 11:15:42.294915 accept_connection 3 returned 4 11:15:42.294926 accept_connection 3 returned 0 11:15:42.294936 Read 92 bytes 11:15:42.294943 Process 92 bytes request 11:15:42.294961 Got request: GET /verifiedserver HTTP/1.1 11:15:42.294967 Are-we-friendly question received 11:15:42.294986 Wrote request (92 bytes) input to log/5/server.input 11:15:42.295003 Identifying ourselves as friends 11:15:42.295068 Response sent (56 bytes) and written to log/5/server.response 11:15:42.295080 special request received, no persistency 11:15:42.295088 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33519... * Connected to 127.0.0.1 (127.0.0.1) port 33519 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33519 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75077 === End of file http_verify.out === Start of file server.cmd Testnum 8 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75077 === End of file server.response === Start of file valgrind8 ==75356== ==75356== Process terminating with default action of signal 4 (SIGILL) ==75356== Illegal opcode at address 0x10B06D ==75356== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75356== by 0x10B06D: main (tool_main.c:234) === End of file valgrind8 startnew: perl -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: ../src/curl --max-time 13 --output log/3/http_verify.out --silent --verbose --globoff "http://127.0.0.1:46313/verifiedserver" 2>log/3/http_verify.log RUN: HTTP server is on PID 75083 port 46313 * pid http => 75083 75083 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/3/valgrind10 ../src/curl -q --output log/3/curl10.out --include --trace-ascii log/3/trace10 --trace-time http://127.0.0.1:46313/we/want/10 -T log/3/test10.txt > log/3/stdout10 2> log/3/stderr10 10: 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 10 === Start of file http_server.log 11:15:41.297400 Running HTTP IPv4 version on port 46313 11:15:41.297452 Wrote pid 75083 to log/3/server/http_server.pid 11:15:41.297468 Wrote port 46313 to log/3/server/http_server.port 11:15:42.306689 ====> Client connect 11:15:42.306704 accept_connection 3 returned 4 11:15:42.306715 accept_connection 3 returned 0 11:15:42.306725 Read 92 bytes 11:15:42.306732 Process 92 bytes request 11:15:42.306747 Got request: GET /verifiedserver HTTP/1.1 11:15:42.306754 Are-we-friendly question received 11:15:42.306771 Wrote request (92 bytes) input to log/3/server.input 11:15:42.306787 Identifying ourselves as friends 11:15:42.306841 Response sent (56 bytes) and written to log/3/server.response 11:15:42.306849 special request received, no persistency 11:15:42.306856 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46313... * Connected to 127.0.0.1 (127.0.0.1) port 46313 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46313 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75083 === End of file http_verify.out === Start of file server.cmd Testnum 10 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75083 === End of file server.response === Start of file test10.txt Weird file to upload for testing the PUT feature === End of file test10.txt === Start of file valgrind10 ==75398== ==75398== Process terminating with default action of signal 4 (SIGILL) ==75398== Illegal opcode at address 0x10B06D ==75398== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75398== by 0x10B06D: main (tool_main.c:234) === End of file valgrind10 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/12/valgrind21 ../src/curl -q --output log/12/curl21.out --include --trace-ascii log/12/trace21 --trace-time -I -d FOOO -F moo=moo localhost > log/12/stdout21 2> log/12/stderr21 curl returned 132, when expecting 2 21: exit FAILED == Contents of files in the log/12/ dir after test 21 === Start of file server.cmd Testnum 21 === End of file server.cmd === Start of file valgrind21 ==76285== ==76285== Process terminating with default action of signal 4 (SIGILL) ==76285== Illegal opcode at address 0x10B06D ==76285== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76285== by 0x10B06D: main (tool_main.c:234) === End of file valgrind21 startnew: perl -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: ../src/curl --max-time 13 --output log/1/http_verify.out --silent --verbose --globoff "http://127.0.0.1:39283/verifiedserver" 2>log/1/http_verify.log RUN: HTTP server is on PID 75084 port 39283 * pid http => 75084 75084 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/1/valgrind12 ../src/curl -q --output log/1/curl12.out --include --trace-ascii log/1/trace12 --trace-time http://127.0.0.1:39283/want/12 -r 100-200 > log/1/stdout12 2> log/1/stderr12 12: 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 12 === Start of file http_server.log 11:15:41.291994 Running HTTP IPv4 version on port 39283 11:15:41.292053 Wrote pid 75CMD (33792): ../libtool --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/valgrind22 ../src/curl -q --output log/8/curl22.out --include --trace-ascii log/8/trace22 --trace-time 127.0.0.1:33791/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22 > log/8/stdout22 2> log/8/stderr22 084 to log/1/server/http_server.pid 11:15:41.292070 Wrote port 39283 to log/1/server/http_server.port 11:15:42.298525 ====> Client connect 11:15:42.298536 accept_connection 3 returned 4 11:15:42.298546 accept_connection 3 returned 0 11:15:42.298554 Read 92 bytes 11:15:42.298563 Process 92 bytes request 11:15:42.298573 Got request: GET /verifiedserver HTTP/1.1 11:15:42.298578 Are-we-friendly question received 11:15:42.298592 Wrote request (92 bytes) input to log/1/server.input 11:15:42.298605 Identifying ourselves as friends 11:15:42.298647 Response sent (56 bytes) and written to log/1/server.response 11:15:42.298653 special request received, no persistency 11:15:42.298658 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39283... * Connected to 127.0.0.1 (127.0.0.1) port 39283 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39283 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75084 === End of file http_verify.out === Start of file server.cmd Testnum 12 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75084 === End of file server.response === Start of file valgrind12 ==75276== ==75276== Process terminating with default action of signal 4 (SIGILL) ==75276== Illegal opcode at address 0x10B06D ==75276== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==75276== by 0x10B06D: main (tool_main.c:234) === End of file valgrind12 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/8/valgrind22 ../src/curl -q --output log/8/curl22.out --include --trace-ascii log/8/trace22 --trace-time 127.0.0.1:33791/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (33792): ../libtool --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/valgrind23 ../src/curl -q --output log/6/curl23.out --include --trace-ascii log/6/trace23 --trace-time htfp://127.0.0.1:41583/none.htfml > log/6/stdout23 2> log/6/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/9/valgrind24 ../src/curl -q --output log/9/curl24.out --include --trace-ascii log/9/trace24 --trace-time http://127.0.0.1:40247/24 --fail --silent --show-error > log/9/stdout24 2> log/9/stderr24 CMD (33792): ../libtool --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/valgrind25 ../src/curl -q --output log/11/curl25.out --include --trace-ascii log/11/trace25 --trace-time http://127.0.0.1:35843/want/25 -L --max-redirs 5 > log/11/stdout25 2> log/11/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/2/valgrind26 ../src/curl -q --output log/2/curl26.out --include --trace-ascii log/2/trace26 --trace-time http://127.0.0.1:44205/want/26 -o - -o - > log/2/stdout26 2> log/2/stderr26 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22 > log/8/stdout22 2> log/8/stderr22 22: 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 22 === Start of file server.cmd Testnum 22 === End of file server.cmd === Start of file valgrind22 ==76331== ==76331== Process terminating with default action of signal 4 (SIGILL) ==76331== Illegal opcode at address 0x10B06D ==76331== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76331== by 0x10B06D: main (tool_main.c:234) === End of file valgrind22 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/6/valgrind23 ../src/curl -q --output log/6/curl23.out --include --trace-ascii log/6/trace23 --trace-time htfp://127.0.0.1:41583/none.htfml > log/6/stdout23 2> log/6/stderr23 curl returned 132, when expecting 1 23: exit FAILED == Contents of files in the log/6/ dir after test 23 === Start of file server.cmd Testnum 23 === End of file server.cmd === Start of file valgrind23 ==76360== ==76360== Process terminating with default action of signal 4 (SIGILL) ==76360== Illegal opcode at address 0x10B06D ==76360== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76360== by 0x10B06D: main (tool_main.c:234) === End of file valgrind23 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/9/valgrind24 ../src/curl -q --output log/9/curl24.out --include --trace-ascii log/9/trace24 --trace-time http://127.0.0.1:40247/24 --fail --silent --show-error > log/9/stdout24 2> log/9/stderr24 24: 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 24 === Start of file server.cmd Testnum 24 === End of file server.cmd === Start of file valgrind24 ==76391== ==76391== Process terminating with default action of signal 4 (SIGILL) ==76391== Illegal opcode at address 0x10B06D ==76391== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76391== by 0x10B06D: main (tool_main.c:234) === End of file valgrind24 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/11/valgrind25 ../src/curl -q --output log/11/curl25.out --include --trace-ascii log/11/trace25 --trace-time http://127.0.0.1:35843/want/25 -L --max-redirs 5 > log/11/stdout25 2> log/11/stderr25 25: 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 25 === Start of file server.cmd Testnum 25 === End of file server.cmd === Start of file valgrind25 ==76473== ==76473== Process terminating with default action of signal 4 (SIGILL) ==76473== Illegal opcode at address 0x10B06D ==76473== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76473== by 0x10B06D: main (tool_main.c:234) === End of file valgrind25 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/2/valgrind26 ../src/curl -q --output log/2/curl26.out --include --trace-ascii log/2/trace26 --trace-time http://127.0.0.1:44205/want/26 -o - -o - > log/2/stdout26 2> log/2/stderr26 26: 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 26 === Start of file server.cmd Testnum 26 === End of file server.cmd === Start of file valgrind26 ==76495== ==76495== Process terminating with default action of signal 4 (SIGILL) ==76495== Illegal opcode at address 0x10B06D ==76495== at 0x10B06D: 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/7/valgrind27 ../src/curl -q --output log/7/curl27.out --include --trace-ascii log/7/trace27 --trace-time "http://127.0.0.1:35853/want/{27,27,27}" -b none > log/7/stdout27 2> log/7/stderr27 CMD (33792): ../libtool --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/valgrind29 ../src/curl -q --output log/10/curl29.out --include --trace-ascii log/10/trace29 --trace-time http://127.0.0.1:36145/want/29 -m 2 > log/10/stdout29 2> log/10/stderr29 CMD (33792): ../libtool --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/valgrind28 ../src/curl -q --output log/4/curl28.out --include --trace-ascii log/4/trace28 --trace-time http://127.0.0.1:41947/want/28 -L > log/4/stdout28 2> log/4/stderr28 CMD (33792): ../libtool --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-time http://127.0.0.1:33519/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/3/valgrind31 ../src/curl -q --output log/3/curl31.out --include --trace-ascii log/3/trace31 --trace-time http://test31.curl:46313/we/want/31 -b none -c log/3/jar31.txt --resolve test31.curl:46313:127.0.0.1 > log/3/stdout31 2> log/3/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/12/valgrind32 ../src/curl -q --output log/12/curl32.out --include --trace-ascii log/12/trace32 --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:44175/32 -G > log/12/stdout32 2> log/12/stderr32 CMD (33792): ../libtool --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/valgrind33 ../src/curl -q --output log/1/curl33.out --include --trace-ascii log/1/trace33 --trace-time http://127.0.0.1:39283/33 -Tlog/1/test33.txt -C 50 > log/1/stdout33 2> log/1/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/8/valgrind34 ../src/curl -q --output log/8/curl34.out --include --trace-ascii log/8/trace34 --trace-time http://127.0.0.1:33791/34 > log/8/stdout34 2> log/8/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/6/valgrind35 ../src/curl -q --output log/6/curl35.out --include --trace-ascii log/6/trace35 --trace-time http://127.0.0.1:41583/we/want/35 --data-binary @log/6/test35.txt > log/6/stdout35 2> log/6/stderr35 ==76495== by 0x10B06D: main (tool_main.c:234) === End of file valgrind26 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/7/valgrind27 ../src/curl -q --output log/7/curl27.out --include --trace-ascii log/7/trace27 --trace-time "http://127.0.0.1:35853/want/{27,27,27}" -b none > log/7/stdout27 2> log/7/stderr27 27: 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 27 === Start of file server.cmd Testnum 27 === End of file server.cmd === Start of file valgrind27 ==76579== ==76579== Process terminating with default action of signal 4 (SIGILL) ==76579== Illegal opcode at address 0x10B06D ==76579== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76579== by 0x10B06D: main (tool_main.c:234) === End of file valgrind27 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/4/valgrind28 ../src/curl -q --output log/4/curl28.out --include --trace-ascii log/4/trace28 --trace-time http://127.0.0.1:41947/want/28 -L > log/4/stdout28 2> log/4/stderr28 28: 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 28 === Start of file server.cmd Testnum 28 === End of file server.cmd === Start of file valgrind28 ==76624== ==76624== Process terminating with default action of signal 4 (SIGILL) ==76624== Illegal opcode at address 0x10B06D ==76624== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76624== by 0x10B06D: 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/10/valgrind29 ../src/curl -q --output log/10/curl29.out --include --trace-ascii log/10/trace29 --trace-time http://127.0.0.1:36145/want/29 -m 2 > log/10/stdout29 2> log/10/stderr29 29: 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 29 === Start of file server.cmd Testnum 29 === End of file server.cmd === Start of file valgrind29 ==76643== ==76643== Process terminating with default action of signal 4 (SIGILL) ==76643== Illegal opcode at address 0x10B06D ==76643== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76643== by 0x10B06D: main (tool_main.c:234) === End of file valgrind29 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-time http://127.0.0.1:33519/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 server.cmd Testnum 30 === End of file server.cmd === Start of file valgrind30 ==76670== ==76670== Process terminating with default action of signal 4 (SIGILL) ==76670== Illegal opcode at address 0x10B06D ==76670== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76670== by 0x10B06D: main (tool_main.c:234) === End of file valgrind30 setenv TZ = GMT prechecked /usr/bin/perl -e "print 'Test requires default test server host' if ( '127.0.0.1' ne '127.0.0.1' );" 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/3/valgrind31 ../src/curl -q --output log/3/curl31.out --include --trace-ascii log/3/trace31 --trace-time http://test31.curl:46313/we/want/31 -b none -c log/3/jar31.txt --resolve test31.curl:46313:127.0.0.1 > log/3/stdout31 2> log/3/stderr31 31: 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 31 === Start of file server.cmd Testnum 31 === End of file server.cmd === Start of file valgrind31 ==76772== ==76772== Process terminating with default action of signal 4 (SIGILL) ==76772== Illegal opcode at address 0x10B06D ==76772== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76772== by 0x10B06D: main (tool_main.c:234) === End of file valgrind31 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/12/valgrind32 ../src/curl -q --output log/12/curl32.out --include --trace-ascii log/12/trace32 --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:44175/32 -G > log/12/stdout32 2> log/12/stderr32 32: 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 32 === Start of file server.cmd Testnum 32 === End of file server.cmd === Start of file valgrind32 ==76800== ==76800== Process terminating with default action of signal 4 (SIGILL) ==76800== Illegal opcode at address 0x10B06D ==76800== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76800== by 0x10B06D: main (tool_main.c:234) === End of file valgrind32 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/1/valgrind33 ../src/curl -q --output log/1/curl33.out --include --trace-ascii log/1/trace33 --trace-time http://127.0.0.1:39283/33 -Tlog/1/test33.txt -C 50 > log/1/stdout33 2> log/1/stderr33 33: 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 33 === Start of file server.cmd Testnum 33 === End of file server.cmd === Start of file test33.txt 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file test33.txt === Start of file valgrind33 ==76810== ==76810== Process terminating with default action of signal 4 (SIGILL) ==76810== Illegal opcode at address 0x10B06D ==76810== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76810== by 0x10B06D: main (tool_main.c:234) === End of file valgrind33 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/8/valgrind34 ../src/curl -q --output log/8/curl34.out --include --trace-ascii log/8/trace34 --trace-time http://127.0.0.1:33791/34 > log/8/stdout34 2> log/8/stderr34 34: 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 34 === Start of file server.cmd Testnum 34 === End of file server.cmd === Start of file valgrind34 ==76922== ==76922== Process terminating with default action of signal 4 (SIGILL) ==76922== Illegal opcode at address 0x10B06D ==76922== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76922== by 0x10B06D: main (tool_main.c:234) === End of file valgrind34 test 0035...[HTTP POST binary data with embeddeCMD (33792): ../libtool --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/valgrind36 ../src/curl -q --output log/9/curl36.out --include --trace-ascii log/9/trace36 --trace-time http://127.0.0.1:40247/36 > log/9/stdout36 2> log/9/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/2/valgrind38 ../src/curl -q --include --trace-ascii log/2/trace38 --trace-time http://127.0.0.1:44205/want/38 -C - --no-include -o log/2/fewl38.txt > log/2/stdout38 2> log/2/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/11/valgrind37 ../src/curl -q --output log/11/curl37.out --include --trace-ascii log/11/trace37 --trace-time http://127.0.0.1:35843/37 > log/11/stdout37 2> log/11/stderr37 CMD (33792): ../libtool --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/valgrind39 ../src/curl -q --output log/7/curl39.out --include --trace-ascii log/7/trace39 --trace-time http://127.0.0.1:35853/we/want/39 -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/7/stdout39 2> log/7/stderr39 CMD (33792): ../libtool --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/valgrind40 ../src/curl -q --output log/4/curl40.out --include --trace-ascii log/4/trace40 --trace-time http://127.0.0.1:41947/we/are/all/twits/40 -L > log/4/stdout40 2> log/4/stderr40 CMD (33792): ../libtool --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/valgrind41 ../src/curl -q --output log/10/curl41.out --include --trace-ascii log/10/trace41 --trace-time http://127.0.0.1:36145/want/41 -F moo=@boo > log/10/stdout41 2> log/10/stderr41 CMD (33792): ../libtool --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/valgrind42 ../src/curl -q --output log/5/curl42.out --include --trace-ascii log/5/trace42 --trace-time http://127.0.0.1:33519/we/are/all/twits/42 -L > log/5/stdout42 2> log/5/stderr42 d 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/6/valgrind35 ../src/curl -q --output log/6/curl35.out --include --trace-ascii log/6/trace35 --trace-time http://127.0.0.1:41583/we/want/35 --data-binary @log/6/test35.txt > log/6/stdout35 2> log/6/stderr35 35: 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 35 === 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 ==76924== ==76924== Process terminating with default action of signal 4 (SIGILL) ==76924== Illegal opcode at address 0x10B06D ==76924== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76924== by 0x10B06D: main (tool_main.c:234) === End of file valgrind35 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/9/valgrind36 ../src/curl -q --output log/9/curl36.out --include --trace-ascii log/9/trace36 --trace-time http://127.0.0.1:40247/36 > log/9/stdout36 2> log/9/stderr36 36: 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 36 === Start of file server.cmd Testnum 36 === End of file server.cmd === Start of file valgrind36 ==76962== ==76962== Process terminating with default action of signal 4 (SIGILL) ==76962== Illegal opcode at address 0x10B06D ==76962== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==76962== by 0x10B06D: main (tool_main.c:234) === End of file valgrind36 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/2/valgrind38 ../src/curl -q --include --trace-ascii log/2/trace38 --trace-time http://127.0.0.1:44205/want/38 -C - --no-include -o log/2/fewl38.txt > log/2/stdout38 2> log/2/stderr38 38: 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 38 === 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 server.cmd Testnum 38 === End of file server.cmd === Start of file valgrind38 ==77074== ==77074== Process terminating with default action of signal 4 (SIGILL) ==77074== Illegal opcode at address 0x10B06D ==77074== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77074== by 0x10B06D: 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/11/valgrind37 ../src/curl -q --output log/11/curl37.out --include --trace-ascii log/11/trace37 --trace-time http://127.0.0.1:35843/37 > log/11/stdout37 2> log/11/stderr37 37: 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 37 === Start of file server.cmd Testnum 37 === End of file server.cmd === Start of file valgrind37 ==77067== ==77067== Process terminating with default action of signal 4 (SIGILL) ==77067== Illegal opcode at address 0x10B06D ==77067== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77067== by 0x10B06D: main (tool_main.c:234) === End of file valgrind37 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/7/valgrind39 ../src/curl -q --output log/7/curl39.out --include --trace-ascii log/7/trace39 --trace-time http://127.0.0.1:35853/we/want/39 -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/7/stdout39 2> log/7/stderr39 39: 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 39 === Start of file server.cmd Testnum 39 === End of file server.cmd === Start of file test39.txt foo bar This is a bar foo bar foo === End of file test39.txt === Start of file valgrind39 ==77168== ==77168== Process terminating with default action of signal 4 (SIGILL) ==77168== Illegal opcode at address 0x10B06D ==77168== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77168== by 0x10B06D: main (tool_main.c:234) === End of file valgrind39 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/4/valgrind40 ../src/curl -q --output log/4/curl40.out --include --trace-ascii log/4/trace40 --trace-time http://127.0.0.1:41947/we/are/all/twits/40 -L > log/4/stdout40 2> log/4/stderr40 40: 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 40 === Start of file server.cmd Testnum 40 === End of file server.cmd === Start of file valgrind40 ==77197== ==77197== Process terminating with default action of signal 4 (SIGILL) ==77197== Illegal opcode at address 0x10B06D ==77197== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77197== by 0x10B06D: main (tool_main.c:234) === End of file valgrind40 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/10/valgrind41 ../src/curl -q --output log/10/curl41.out --include --trace-ascii log/10/trace41 --trace-time http://127.0.0.1:36145/want/41 -F moo=@boo > log/10/stdout41 2> log/10/stderr41 curl returned 132, when expecting 26 41: exit FAILED == Contents of files in the log/10/ dir after test 41 === Start of file server.cmd Testnum 41 === End of file server.cmd === Start of file valgrind41 ==77201== ==77201== Process terminating with default action of signal 4 (SIGILL) ==77201== Illegal opcode at address 0x10B06D ==77201== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77201== by 0x10B06D: main (tool_main.c:234) === End of file valgrind41 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/5/valgrind42 ../src/curl -q --output log/5/curl42.out --include --trace-ascii log/5/trace42 --trace-time http://127.0.0.1:33519/we/are/all/twits/42 -L > log/5/stdout42 2> log/5/stderr42 42: 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 42 === Start of file server.cmd Testnum 42 === End of file server.cmd === Start of file valgrind42 ==77226== ==77226== Process terminating with default action of signal 4 (SIGILL) ==77226== IllegCMD (33792): ../libtool --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/valgrind43 ../src/curl -q --output log/3/curl43.out --include --trace-ascii log/3/trace43 --trace-time http://127.0.0.1:46313/want/43 -L -x 127.0.0.1:46313 > log/3/stdout43 2> log/3/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/12/valgrind44 ../src/curl -q --output log/12/curl44.out --include --trace-ascii log/12/trace44 --trace-time http://127.0.0.1:44175/we/want/44 -F name=daniel -F tool=curl -F file=@log/12/test44.txt -H "Expect:" > log/12/stdout44 2> log/12/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/1/valgrind45 ../src/curl -q --output log/1/curl45.out --include --trace-ascii log/1/trace45 --trace-time 127.0.0.1:39283/want/45 -L > log/1/stdout45 2> log/1/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/6/valgrind47 ../src/curl -q --output log/6/curl47.out --include --trace-ascii log/6/trace47 --trace-time http://127.0.0.1:41583/47 -0 > log/6/stdout47 2> log/6/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/8/valgrind46 ../src/curl -q --output log/8/curl46.out --include --trace-ascii log/8/trace46 --trace-time domain..tld:33791/want/46 --resolve domain..tld:33791:127.0.0.1 -c log/8/jar46 -b log/8/injar46 > log/8/stdout46 2> log/8/stderr46 CMD (33792): ../libtool --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/valgrind48 ../src/curl -q --output log/9/curl48.out --include --trace-ascii log/9/trace48 --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:40247/48 -G -I http://127.0.0.1:40247/48 > log/9/stdout48 2> log/9/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/2/valgrind49 ../src/curl -q --output log/2/curl49.out --include --trace-ascii log/2/trace49 --trace-time http://127.0.0.1:44205/we/are/all/twits/49 -L > log/2/stdout49 2> log/2/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/11/valgrind50 ../src/curl -q --output log/11/curl50.out --include --trace-ascii log/11/trace50 --trace-time http://127.0.0.1:35843/we/are/all/twits/50 -L > log/11/stdout50 2> log/11/stderr50 al opcode at address 0x10B06D ==77226== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77226== by 0x10B06D: main (tool_main.c:234) === End of file valgrind42 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/3/valgrind43 ../src/curl -q --output log/3/curl43.out --include --trace-ascii log/3/trace43 --trace-time http://127.0.0.1:46313/want/43 -L -x 127.0.0.1:46313 > log/3/stdout43 2> log/3/stderr43 43: 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 43 === Start of file server.cmd Testnum 43 === End of file server.cmd === Start of file valgrind43 ==77366== ==77366== Process terminating with default action of signal 4 (SIGILL) ==77366== Illegal opcode at address 0x10B06D ==77366== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77366== by 0x10B06D: main (tool_main.c:234) === End of file valgrind43 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/12/valgrind44 ../src/curl -q --output log/12/curl44.out --include --trace-ascii log/12/trace44 --trace-time http://127.0.0.1:44175/we/want/44 -F name=daniel -F tool=curl -F file=@log/12/test44.txt -H "Expect:" > log/12/stdout44 2> log/12/stderr44 44: 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 44 === Start of file server.cmd Testnum 44 === End of file server.cmd === Start of file test44.txt foo- This is a moo- bar === End of file test44.txt === Start of file valgrind44 ==77371== ==77371== Process terminating with default action of signal 4 (SIGILL) ==77371== Illegal opcode at address 0x10B06D ==77371== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77371== by 0x10B06D: main (tool_main.c:234) === End of file valgrind44 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/1/valgrind45 ../src/curl -q --output log/1/curl45.out --include --trace-ascii log/1/trace45 --trace-time 127.0.0.1:39283/want/45 -L > log/1/stdout45 2> log/1/stderr45 45: 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 45 === Start of file server.cmd Testnum 45 === End of file server.cmd === Start of file valgrind45 ==77400== ==77400== Process terminating with default action of signal 4 (SIGILL) ==77400== Illegal opcode at address 0x10B06D ==77400== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77400== by 0x10B06D: main (tool_main.c:234) === End of file valgrind45 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/6/valgrind47 ../src/curl -q --output log/6/curl47.out --include --trace-ascii log/6/trace47 --trace-time http://127.0.0.1:41583/47 -0 > log/6/stdout47 2> log/6/stderr47 47: 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 47 === Start of file server.cmd Testnum 47 === End of file server.cmd === Start of file valgrind47 ==77522== ==77522== Process terminating with default action of signal 4 (SIGILL) ==77522== Illegal opcode at address 0x10B06D ==77522== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77522== by 0x10B06D: main (tool_main.c:234) === End of file valgrind47 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 --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind46 ../src/curl -q --output log/8/curl46.out --include --trace-ascii log/8/trace46 --trace-time domain..tld:33791/want/46 --resolve domain..tld:33791:127.0.0.1 -c log/8/jar46 -b log/8/injar46 > log/8/stdout46 2> log/8/stderr46 46: 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 46 === 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 valgrind46 ==77516== ==77516== Process terminating with default action of signal 4 (SIGILL) ==77516== Illegal opcode at address 0x10B06D ==77516== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77516== by 0x10B06D: main (tool_main.c:234) === End of file valgrind46 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/9/valgrind48 ../src/curl -q --output log/9/curl48.out --include --trace-ascii log/9/trace48 --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:40247/48 -G -I http://127.0.0.1:40247/48 > log/9/stdout48 2> log/9/stderr48 48: 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 48 === Start of file server.cmd connection-monitor Testnum 48 === End of file server.cmd === Start of file valgrind48 ==77550== ==77550== Process terminating with default action of signal 4 (SIGILL) ==77550== Illegal opcode at address 0x10B06D ==77550== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77550== by 0x10B06D: 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/2/valgrind49 ../src/curl -q --output log/2/curl49.out --include --trace-ascii log/2/trace49 --trace-time http://127.0.0.1:44205/we/are/all/twits/49 -L > log/2/stdout49 2> log/2/stderr49 49: 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 49 === Start of file server.cmd Testnum 49 === End of file server.cmd === Start of file valgrind49 ==77671== ==77671== Process terminating with default action of signal 4 (SIGILL) ==77671== Illegal opcode at address 0x10B06D ==77671== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77671== by 0x10B06D: main (tool_main.c:234) === End of file valgrind49 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/11/valgrind50 ../src/curl -q --output log/11/curl50.out --include --trace-ascii log/11/trace50 --trace-time http://127.0.0.1:35843/we/are/all/twits/50 -L > log/11/stdout50 2> log/11/stderr50 50: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failureCMD (33792): ../libtool --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/valgrind54 ../src/curl -q --output log/5/curl54.out --include --trace-ascii log/5/trace54 --trace-time http://127.0.0.1:33519/want/54 -L > log/5/stdout54 2> log/5/stderr54 CMD (33792): ../libtool --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/valgrind51 ../src/curl -q --output log/7/curl51.out --include --trace-ascii log/7/trace51 --trace-time http://127.0.0.1:35853/we/are/all/twits/51 -L > log/7/stdout51 2> log/7/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/10/valgrind53 ../src/curl -q --output log/10/curl53.out --include --trace-ascii log/10/trace53 --trace-time 127.0.0.1:36145/want/53 -b log/10/injar53 -j > log/10/stdout53 2> log/10/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/valgrind52 ../src/curl -q --output log/4/curl52.out --include --trace-ascii log/4/trace52 --trace-time http://127.0.0.1:41947/we/are/all/twits/52 -L > log/4/stdout52 2> log/4/stderr52 CMD (33792): ../libtool --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/valgrind55 ../src/curl -q --output log/3/curl55.out --include --trace-ascii log/3/trace55 --trace-time http://127.0.0.1:46313/55 -L > log/3/stdout55 2> log/3/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/12/valgrind56 ../src/curl -q --output log/12/curl56.out --include --trace-ascii log/12/trace56 --trace-time -K - 127.0.0.1:44175/that.site.com/56 log/12/stdout56 2> log/12/stderr56 ? Returned: 132 == Contents of files in the log/11/ dir after test 50 === Start of file server.cmd Testnum 50 === End of file server.cmd === Start of file valgrind50 ==77676== ==77676== Process terminating with default action of signal 4 (SIGILL) ==77676== Illegal opcode at address 0x10B06D ==77676== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77676== by 0x10B06D: main (tool_main.c:234) === End of file valgrind50 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/5/valgrind54 ../src/curl -q --output log/5/curl54.out --include --trace-ascii log/5/trace54 --trace-time http://127.0.0.1:33519/want/54 -L > log/5/stdout54 2> log/5/stderr54 54: 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 54 === Start of file server.cmd Testnum 54 === End of file server.cmd === Start of file valgrind54 ==77805== ==77805== Process terminating with default action of signal 4 (SIGILL) ==77805== Illegal opcode at address 0x10B06D ==77805== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77805== by 0x10B06D: main (tool_main.c:234) === End of file valgrind54 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/7/valgrind51 ../src/curl -q --output log/7/curl51.out --include --trace-ascii log/7/trace51 --trace-time http://127.0.0.1:35853/we/are/all/twits/51 -L > log/7/stdout51 2> log/7/stderr51 51: 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 51 === Start of file server.cmd Testnum 51 === End of file server.cmd === Start of file valgrind51 ==77765== ==77765== Process terminating with default action of signal 4 (SIGILL) ==77765== Illegal opcode at address 0x10B06D ==77765== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77765== by 0x10B06D: main (tool_main.c:234) === End of file valgrind51 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/10/valgrind53 ../src/curl -q --output log/10/curl53.out --include --trace-ascii log/10/trace53 --trace-time 127.0.0.1:36145/want/53 -b log/10/injar53 -j > log/10/stdout53 2> log/10/stderr53 53: 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 53 === 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 valgrind53 ==77778== ==77778== Process terminating with default action of signal 4 (SIGILL) ==77778== Illegal opcode at address 0x10B06D ==77778== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77778== by 0x10B06D: main (tool_main.c:234) === End of file valgrind53 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/4/valgrind52 ../src/curl -q --output log/4/curl52.out --include --trace-ascii log/4/trace52 --trace-time http://127.0.0.1:41947/we/are/all/twits/52 -L > log/4/stdout52 2> log/4/stderr52 52: 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 52 === Start of file server.cmd Testnum 52 === End of file server.cmd === Start of file valgrind52 ==77767== ==77767== Process terminating with default action of signal 4 (SIGILL) ==77767== Illegal opcode at address 0x10B06D ==77767== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77767== by 0x10B06D: main (tool_main.c:234) === End of file valgrind52 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/3/valgrind55 ../src/curl -q --output log/3/curl55.out --include --trace-ascii log/3/trace55 --trace-time http://127.0.0.1:46313/55 -L > log/3/stdout55 2> log/3/stderr55 55: 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 55 === Start of file server.cmd Testnum 55 === End of file server.cmd === Start of file valgrind55 ==77959== ==77959== Process terminating with default action of signal 4 (SIGILL) ==77959== Illegal opcode at address 0x10B06D ==77959== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77959== by 0x10B06D: main (tool_main.c:234) === End of file valgrind55 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/12/valgrind56 ../src/curl -q --output log/12/curl56.out --include --trace-ascii log/12/trace56 --trace-time -K - 127.0.0.1:44175/that.site.com/56 log/12/stdout56 2> log/12/stderr56 56: 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 56 === Start of file server.cmd Testnum 56 === End of file server.cmd === 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 "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" # === End of file stdin-for-56 === Start of file valgrind56 ==77977== ==77977== Process terminating with default action of signal 4 (SIGILL) ==77977== Illegal opcode at 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/valgrind57 ../src/curl -q --include --trace-ascii log/1/trace57 --trace-time -w "%{content_type}\n" http://127.0.0.1:39283/57 -o log/1/out57 > log/1/stdout57 2> log/1/stderr57 dress 0x10B06D ==77977== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77977== by 0x10B06D: main (tool_main.c:234) === End of file valgrind56 CMD (33792): ../libtool --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/valgrind60 ../src/curl -q --output log/9/curl60.out --include --trace-ascii log/9/trace60 --trace-time http://127.0.0.1:40247/bzz/60 -T - -H "Content-Length: 1" log/9/stdout60 2> log/9/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/8/valgrind59 ../src/curl -q --output log/8/curl59.out --include --trace-ascii log/8/trace59 --trace-time "http://127.0.0.1:33791?mooo/59" > log/8/stdout59 2> log/8/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/6/valgrind58 ../src/curl -q --output log/6/curl58.out --include --trace-ascii log/6/trace58 --trace-time http://127.0.0.1:41583/we/want/ -T log/6/58te[]st.txt -g > log/6/stdout58 2> log/6/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/2/valgrind61 ../src/curl -q --output log/2/curl61.out --include --trace-ascii log/2/trace61 --trace-time http://127.0.0.1:44205/we/want/61 -c log/2/jar61.txt -H "Host: www.host.foo.com" > log/2/stdout61 2> log/2/stderr61 CMD (33792): ../libtool --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/valgrind62 ../src/curl -q --output log/11/curl62.out --include --trace-ascii log/11/trace62 --trace-time http://127.0.0.1:35843/we/want/62 http://127.0.0.1:35843/we/want/62?hoge=fuga -b log/11/jar62.txt -H "Host: www.host.foo.com" > log/11/stdout62 2> log/11/stderr62 CMD (33792): ../libtool --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/valgrind63 ../src/curl -q --output log/5/curl63.out --include --trace-ascii log/5/trace63 --trace-time http://we.want.that.site.com/63 > log/5/stdout63 2> log/5/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/4/valgrind66 ../src/curl -q --output log/4/curl66.out --include --trace-ascii log/4/trace66 --trace-time http://127.0.0.1:41947/66 --http0.9 > log/4/stdout66 2> log/4/stderr66 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/1/valgrind57 ../src/curl -q --include --trace-ascii log/1/trace57 --trace-time -w "%{content_type}\n" http://127.0.0.1:39283/57 -o log/1/out57 > log/1/stdout57 2> log/1/stderr57 57: stdout FAILED: --- log/1/check-expected 2024-05-23 11:15:47.389717405 +0200 +++ log/1/check-generated 2024-05-23 11:15:47.389717405 +0200 @@ -1 +0,0 @@ -text/html; charset=ISO-8859-4[LF] == Contents of files in the log/1/ dir after test 57 === Start of file check-expected text/html; charset=ISO-8859-4[LF] === End of file check-expected === Start of file server.cmd Testnum 57 === End of file server.cmd === Start of file valgrind57 ==77976== ==77976== Process terminating with default action of signal 4 (SIGILL) ==77976== Illegal opcode at address 0x10B06D ==77976== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==77976== by 0x10B06D: main (tool_main.c:234) === End of file valgrind57 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/9/valgrind60 ../src/curl -q --output log/9/curl60.out --include --trace-ascii log/9/trace60 --trace-time http://127.0.0.1:40247/bzz/60 -T - -H "Content-Length: 1" log/9/stdout60 2> log/9/stderr60 60: 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 60 === Start of file server.cmd Testnum 60 === End of file server.cmd === Start of file stdin-for-60 more than one byte === End of file stdin-for-60 === Start of file valgrind60 ==78116== ==78116== Process terminating with default action of signal 4 (SIGILL) ==78116== Illegal opcode at address 0x10B06D ==78116== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78116== by 0x10B06D: 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/8/valgrind59 ../src/curl -q --output log/8/curl59.out --include --trace-ascii log/8/trace59 --trace-time "http://127.0.0.1:33791?mooo/59" > log/8/stdout59 2> log/8/stderr59 59: 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 59 === Start of file server.cmd Testnum 59 === End of file server.cmd === Start of file valgrind59 ==78109== ==78109== Process terminating with default action of signal 4 (SIGILL) ==78109== Illegal opcode at address 0x10B06D ==78109== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78109== by 0x10B06D: main (tool_main.c:234) === End of file valgrind59 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/6/valgrind58 ../src/curl -q --output log/6/curl58.out --include --trace-ascii log/6/trace58 --trace-time http://127.0.0.1:41583/we/want/ -T log/6/58te[]st.txt -g > log/6/stdout58 2> log/6/stderr58 58: 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 58 === Start of file 58te[]st.txt a few bytes === End of file 58te[]st.txt === Start of file server.cmd Testnum 58 === End of file server.cmd === Start of file valgrind58 ==78105== ==78105== Process terminating with default action of signal 4 (SIGILL) ==78105== Illegal opcode at address 0x10B06D ==78105== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78105== by 0x10B06D: main (tool_main.c:234) === End of file valgrind58 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/2/valgrind61 ../src/curl -q --output log/2/curl61.out --include --trace-ascii log/2/trace61 --trace-time http://127.0.0.1:44205/we/want/61 -c log/2/jar61.txt -H "Host: www.host.foo.com" > log/2/stdout61 2> log/2/stderr61 61: 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 61 === Start of file server.cmd Testnum 61 === End of file server.cmd === Start of file valgrind61 ==78257== ==78257== Process terminating with default action of signal 4 (SIGILL) ==78257== Illegal opcode at address 0x10B06D ==78257== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78257== by 0x10B06D: main (tool_main.c:234) === End of file valgrind61 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/11/valgrind62 ../src/curl -q --output log/11/curl62.out --include --trace-ascii log/11/trace62 --trace-time http://127.0.0.1:35843/we/want/62 http://127.0.0.1:35843/we/want/62?hoge=fuga -b log/11/jar62.txt -H "Host: www.host.foo.com" > log/11/stdout62 2> log/11/stderr62 62: 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 62 === 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 valgrind62 ==78284== ==78284== Process terminating with default action of signal 4 (SIGILL) ==78284== Illegal opcode at address 0x10B06D ==78284== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78284== by 0x10B06D: main (tool_main.c:234) === End of file valgrind62 setenv http_proxy = http://fake:user@127.0.0.1:33519/ 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/5/valgrind63 ../src/curl -q --output log/5/curl63.out --include --trace-ascii log/5/trace63 --trace-time http://we.want.that.site.com/63 > log/5/stdout63 2> log/5/stderr63 63: 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 63 === Start of file server.cmd Testnum 63 === End of file server.cmd === Start of file valgrind63 ==78358== ==78358== Process terminating with default action of signal 4 (SIGILL) ==78358== Illegal opcode at address 0x10B06D ==78358== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78358== by 0x10B06D: 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/4/valgrind66 ../src/curl -q --output log/4/curl66.out --include --trace-ascii log/4/trace66 --trace-time http://127.0.0.1:41947/66 --http0.9 > log/4/stdout66 2> log/4/stderr66 66: protocol FAILED! There was no content 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/valgrind65 ../src/curl -q --output log/10/curl65.out --include --trace-ascii log/10/trace65 --trace-time http://127.0.0.1:36145/65 -u testuser:test2pass --digest > log/10/stdout65 2> log/10/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/7/valgrind64 ../src/curl -q --output log/7/curl64.out --include --trace-ascii log/7/trace64 --trace-time http://127.0.0.1:35853/64 -u testuser:testpass --digest > log/7/stdout64 2> log/7/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/12/valgrind68 ../src/curl -q --output log/12/curl68.out --include --trace-ascii log/12/trace68 --trace-time http://127.0.0.1:44175/68 -u testuser:testpass --ntlm > log/12/stdout68 2> log/12/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/3/valgrind67 ../src/curl -q --output log/3/curl67.out --include --trace-ascii log/3/trace67 --trace-time http://127.0.0.1:46313/67 -u testuser:testpass --ntlm > log/3/stdout67 2> log/3/stderr67 CMD (33792): ../libtool --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/valgrind69 ../src/curl -q --output log/1/curl69.out --include --trace-ascii log/1/trace69 --trace-time http://127.0.0.1:39283/69 -u testuser:testpass --anyauth > log/1/stdout69 2> log/1/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/8/valgrind71 ../src/curl -q --output log/8/curl71.out --include --trace-ascii log/8/trace71 --trace-time http://127.0.0.1:33791/we/want/71 -K - log/8/stdout71 2> log/8/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/9/valgrind70 ../src/curl -q --output log/9/curl70.out --include --trace-ascii log/9/trace70 --trace-time http://127.0.0.1:40247/70 -u testuser:testpass --anyauth > log/9/stdout70 2> log/9/stderr70 CMD (33792): ../libtool --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/valgrind72 ../src/curl -q --output log/6/curl72.out --include --trace-ascii log/6/trace72 --trace-time http://127.0.0.1:41583/72 -u testuser:testpass --anyauth > log/6/stdout72 2> log/6/stderr72 t 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 66 === Start of file server.cmd Testnum 66 === End of file server.cmd === Start of file valgrind66 ==78371== ==78371== Process terminating with default action of signal 4 (SIGILL) ==78371== Illegal opcode at address 0x10B06D ==78371== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78371== by 0x10B06D: main (tool_main.c:234) === End of file valgrind66 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/10/valgrind65 ../src/curl -q --output log/10/curl65.out --include --trace-ascii log/10/trace65 --trace-time http://127.0.0.1:36145/65 -u testuser:test2pass --digest > log/10/stdout65 2> log/10/stderr65 65: 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 65 === Start of file server.cmd Testnum 65 === End of file server.cmd === Start of file valgrind65 ==78378== ==78378== Process terminating with default action of signal 4 (SIGILL) ==78378== Illegal opcode at address 0x10B06D ==78378== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78378== by 0x10B06D: main (tool_main.c:234) === End of file valgrind65 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/7/valgrind64 ../src/curl -q --output log/7/curl64.out --include --trace-ascii log/7/trace64 --trace-time http://127.0.0.1:35853/64 -u testuser:testpass --digest > log/7/stdout64 2> log/7/stderr64 64: 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 64 === Start of file server.cmd Testnum 64 === End of file server.cmd === Start of file valgrind64 ==78376== ==78376== Process terminating with default action of signal 4 (SIGILL) ==78376== Illegal opcode at address 0x10B06D ==78376== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78376== by 0x10B06D: main (tool_main.c:234) === End of file valgrind64 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/12/valgrind68 ../src/curl -q --output log/12/curl68.out --include --trace-ascii log/12/trace68 --trace-time http://127.0.0.1:44175/68 -u testuser:testpass --ntlm > log/12/stdout68 2> log/12/stderr68 68: 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 68 === Start of file server.cmd Testnum 68 === End of file server.cmd === Start of file valgrind68 ==78583== ==78583== Process terminating with default action of signal 4 (SIGILL) ==78583== Illegal opcode at address 0x10B06D ==78583== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78583== by 0x10B06D: main (tool_main.c:234) === End of file valgrind68 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/3/valgrind67 ../src/curl -q --output log/3/curl67.out --include --trace-ascii log/3/trace67 --trace-time http://127.0.0.1:46313/67 -u testuser:testpass --ntlm > log/3/stdout67 2> log/3/stderr67 67: 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 67 === Start of file server.cmd Testnum 67 === End of file server.cmd === Start of file valgrind67 ==78551== ==78551== Process terminating with default action of signal 4 (SIGILL) ==78551== Illegal opcode at address 0x10B06D ==78551== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78551== by 0x10B06D: main (tool_main.c:234) === End of file valgrind67 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/1/valgrind69 ../src/curl -q --output log/1/curl69.out --include --trace-ascii log/1/trace69 --trace-time http://127.0.0.1:39283/69 -u testuser:testpass --anyauth > log/1/stdout69 2> log/1/stderr69 69: 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 69 === Start of file server.cmd Testnum 69 === End of file server.cmd === Start of file valgrind69 ==78602== ==78602== Process terminating with default action of signal 4 (SIGILL) ==78602== Illegal opcode at address 0x10B06D ==78602== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78602== by 0x10B06D: main (tool_main.c:234) === End of file valgrind69 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/8/valgrind71 ../src/curl -q --output log/8/curl71.out --include --trace-ascii log/8/trace71 --trace-time http://127.0.0.1:33791/we/want/71 -K - log/8/stdout71 2> log/8/stderr71 71: 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 71 === Start of file server.cmd Testnum 71 === End of file server.cmd === Start of file stdin-for-71 -F name=daniel -F tool=curl -F file=@log/8/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 ==78708== ==78708== Process terminating with default action of signal 4 (SIGILL) ==78708== Illegal opcode at address 0x10B06D ==78708== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78708== by 0x10B06D: main (tool_main.c:234) === End of file valgrind71 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/9/valgrind70 ../src/curl -q --output log/9/curl70.out --include --trace-ascii log/9/trace70 --trace-time http://127.0.0.1:40247/70 -u testuser:testpass --anyauth > log/9/stdout70 2> log/9/stderr70 70: 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 70 === Start of file server.cmd Testnum 70 === End of file server.cmd === Start of file valgrind70 ==78701== ==78701== Process terminating with default action of signal 4 (SIGILL) ==78701== Illegal opcode at address 0x10B06D ==78701== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78701== by 0x10B06D: 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/6/valgrind72 ../src/curl -q --output log/6/curl72.out --include --trace-ascii log/6/trace72 --trace-time http://127.0.0.1:41583/72 -u testuser:testpass --anyauth > log/6/stdout72 2> log/6/stderr72 72: 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/11/valgrind74 ../src/curl -q --include --trace-ascii log/11/trace74 --trace-time "http://127.0.0.1:35843/{74,740001}" -o "log/11/dumpit#1.dump" > log/11/stdout74 2> log/11/stderr74 CMD (33792): ../libtool --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/valgrind73 ../src/curl -q --output log/2/curl73.out --include --trace-ascii log/2/trace73 --trace-time http://127.0.0.1:44205/we/want/73 -c log/2/jar73.txt -H "Host: host.NOT_DISCLOSED.se" > log/2/stdout73 2> log/2/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/valgrind75 ../src/curl -q --include --trace-ascii log/5/trace75 --trace-time "http://a-site-never-accessed.example.org/[2-1]" -o "log/5/weee#1.dump" --stderr - > log/5/stdout75 2> log/5/stderr75 2 == Contents of files in the log/6/ dir after test 72 === Start of file server.cmd Testnum 72 === End of file server.cmd === Start of file valgrind72 ==78710== ==78710== Process terminating with default action of signal 4 (SIGILL) ==78710== Illegal opcode at address 0x10B06D ==78710== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78710== by 0x10B06D: main (tool_main.c:234) === End of file valgrind72 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/11/valgrind74 ../src/curl -q --include --trace-ascii log/11/trace74 --trace-time "http://127.0.0.1:35843/{74,740001}" -o "log/11/dumpit#1.dump" > log/11/stdout74 2> log/11/stderr74 74: 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 74 === Start of file server.cmd Testnum 74 === End of file server.cmd === Start of file valgrind74 ==78862== ==78862== Process terminating with default action of signal 4 (SIGILL) ==78862== Illegal opcode at address 0x10B06D ==78862== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78862== by 0x10B06D: main (tool_main.c:234) === End of file valgrind74 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/2/valgrind73 ../src/curl -q --output log/2/curl73.out --include --trace-ascii log/2/trace73 --trace-time http://127.0.0.1:44205/we/want/73 -c log/2/jar73.txt -H "Host: host.NOT_DISCLOSED.se" > log/2/stdout73 2> log/2/stderr73 73: 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 73 === Start of file server.cmd Testnum 73 === End of file server.cmd === Start of file valgrind73 ==78849== ==78849== Process terminating with default action of signal 4 (SIGILL) ==78849== Illegal opcode at address 0x10B06D ==78849== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78849== by 0x10B06D: main (tool_main.c:234) === End of file valgrind73 CMD (33792): ../libtool --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/valgrind76 ../src/curl -q --include --trace-ascii log/4/trace76 --trace-time http://127.0.0.1:47/76/ -O > log/4/stdout76 2> log/4/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/7/valgrind78 ../src/curl -q --output log/7/curl78.out --include --trace-ascii log/7/trace78 --trace-time http://127.0.0.1:35853/78 -z "dec 12 11:00:00 1999 GMT" > log/7/stdout78 2> log/7/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/10/valgrind77 ../src/curl -q --output log/10/curl77.out --include --trace-ascii log/10/trace77 --trace-time http://127.0.0.1:36145/77 -z "dec 12 12:00:00 1999 GMT" > log/10/stdout77 2> log/10/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/12/valgrind79 ../src/curl -q --output log/12/curl79.out --include --trace-ascii log/12/trace79 --trace-time ftp://127.0.0.1:44175/we/want/that/page/79 -x 127.0.0.1:44175 > log/12/stdout79 2> log/12/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/1/valgrind81 ../src/curl -q --output log/1/curl81.out --include --trace-ascii log/1/trace81 --trace-time http://127.0.0.1:39283/81 --proxy-user testuser:testpass -x http://127.0.0.1:39283 --proxy-ntlm > log/1/stdout81 2> log/1/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/8/valgrind82 ../src/curl -q --output log/8/curl82.out --include --trace-ascii log/8/trace82 --trace-time http://127.0.0.1:33791/82 --proxy-user testuser:testpass -x http://127.0.0.1:33791 > log/8/stdout82 2> log/8/stderr82 CMD (33792): ../libtool --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/valgrind84 ../src/curl -q --output log/6/curl84.out --include --trace-ascii log/6/trace84 --trace-time http://127.0.0.1:41583/we/want/that/page/84 -x 127.0.0.1:41583 --user iam:myself > log/6/stdout84 2> log/6/stderr84 * 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/5/valgrind75 ../src/curl -q --include --trace-ascii log/5/trace75 --trace-time "http://a-site-never-accessed.example.org/[2-1]" -o "log/5/weee#1.dump" --stderr - > log/5/stdout75 2> log/5/stderr75 75: stdout FAILED: --- log/5/check-expected 2024-05-23 11:15:48.423071945 +0200 +++ log/5/check-generated 2024-05-23 11:15:48.423071945 +0200 @@ -1,3 +0,0 @@ -curl: (3) bad range in URL position 47:[LF] -http://a-site-never-accessed.example.org/[2-1][LF] - ^[LF] == Contents of files in the log/5/ dir after test 75 === Start of file check-expected curl: (3) bad range in URL position 47:[LF] http://a-site-never-accessed.example.org/[2-1][LF] ^[LF] === End of file check-expected === Start of file server.cmd Testnum 75 === End of file server.cmd === Start of file valgrind75 ==78946== ==78946== Process terminating with default action of signal 4 (SIGILL) ==78946== Illegal opcode at address 0x10B06D ==78946== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78946== by 0x10B06D: main (tool_main.c:234) === End of file valgrind75 * starts no server test 0076...[HTTP, -O with no file name part 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/4/valgrind76 ../src/curl -q --include --trace-ascii log/4/trace76 --trace-time http://127.0.0.1:47/76/ -O > log/4/stdout76 2> log/4/stderr76 curl returned 132, when expecting 23 76: exit FAILED == Contents of files in the log/4/ dir after test 76 === Start of file server.cmd Testnum 76 === End of file server.cmd === Start of file valgrind76 ==78958== ==78958== Process terminating with default action of signal 4 (SIGILL) ==78958== Illegal opcode at address 0x10B06D ==78958== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78958== by 0x10B06D: main (tool_main.c:234) === End of file valgrind76 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/7/valgrind78 ../src/curl -q --output log/7/curl78.out --include --trace-ascii log/7/trace78 --trace-time http://127.0.0.1:35853/78 -z "dec 12 11:00:00 1999 GMT" > log/7/stdout78 2> log/7/stderr78 78: 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 78 === Start of file server.cmd Testnum 78 === End of file server.cmd === Start of file valgrind78 ==79021== ==79021== Process terminating with default action of signal 4 (SIGILL) ==79021== Illegal opcode at address 0x10B06D ==79021== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79021== by 0x10B06D: main (tool_main.c:234) === End of file valgrind78 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/10/valgrind77 ../src/curl -q --output log/10/curl77.out --include --trace-ascii log/10/trace77 --trace-time http://127.0.0.1:36145/77 -z "dec 12 12:00:00 1999 GMT" > log/10/stdout77 2> log/10/stderr77 77: 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 77 === Start of file server.cmd Testnum 77 === End of file server.cmd === Start of file valgrind77 ==78993== ==78993== Process terminating with default action of signal 4 (SIGILL) ==78993== Illegal opcode at address 0x10B06D ==78993== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==78993== by 0x10B06D: main (tool_main.c:234) === End of file valgrind77 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/12/valgrind79 ../src/curl -q --output log/12/curl79.out --include --trace-ascii log/12/trace79 --trace-time ftp://127.0.0.1:44175/we/want/that/page/79 -x 127.0.0.1:44175 > log/12/stdout79 2> log/12/stderr79 79: 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 79 === Start of file server.cmd Testnum 79 === End of file server.cmd === Start of file valgrind79 ==79139== ==79139== Process terminating with default action of signal 4 (SIGILL) ==79139== Illegal opcode at address 0x10B06D ==79139== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79139== by 0x10B06D: main (tool_main.c:234) === End of file valgrind79 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/1/valgrind81 ../src/curl -q --output log/1/curl81.out --include --trace-ascii log/1/trace81 --trace-time http://127.0.0.1:39283/81 --proxy-user testuser:testpass -x http://127.0.0.1:39283 --proxy-ntlm > log/1/stdout81 2> log/1/stderr81 81: 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 81 === Start of file server.cmd Testnum 81 === End of file server.cmd === Start of file valgrind81 ==79155== ==79155== Process terminating with default action of signal 4 (SIGILL) ==79155== Illegal opcode at address 0x10B06D ==79155== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79155== by 0x10B06D: main (tool_main.c:234) === End of file valgrind81 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/8/valgrind82 ../src/curl -q --output log/8/curl82.out --include --trace-ascii log/8/trace82 --trace-time http://127.0.0.1:33791/82 --proxy-user testuser:testpass -x http://127.0.0.1:33791 > log/8/stdout82 2> log/8/stderr82 82: 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 82 === Start of file server.cmd Testnum 82 === End of file server.cmd === Start of file valgrind82 ==79240== ==79240== Process terminating with default action of signal 4 (SIGILL) ==79240== Illegal opcode at address 0x10B06D ==79240== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79240== by 0x10B06D: 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/6/valgrind84 ../src/curl -q --output log/6/curl84.out --include --trace-ascii log/6/trace84 --trace-time http://127.0.0.1:41583/we/want/that/page/84 -x 127.0.0.1:41583 --user iam:myself > log/6/stdout84 2> log/6/stderr84 84: 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 84 === Start of file server.cmd Testnum 84 === End of file server.cmd === Start of file valgrind84 ==79288== ==79288== Process terminating with default action of signal 4 (SIGILL) ==79288== Illegal opcode at address 0x10B06D ==79288== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79288== by 0x10B06D: main (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/11/valgrind85 ../src/curl -q --output log/11/curl85.out --include --trace-ascii log/11/trace85 --trace-time http://127.0.0.1:35843/we/want/that/page/85 -x 127.0.0.1:35843 --user iam:myself --proxy-user testing:this > log/11/stdout85 2> log/11/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/2/valgrind86 ../src/curl -q --include --trace-ascii log/2/trace86 --trace-time "http://127.0.0.1:44205/[860001-860003]" -o "log/2/dumpit#1.dump" > log/2/stdout86 2> log/2/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/5/valgrind87 ../src/curl -q --include --trace-ascii log/5/trace87 --trace-time "http://127.0.0.1:33519/[870001-870002]" -o "log/5/dumpit87-#2.dump" > log/5/stdout87 2> log/5/stderr87 CMD (33792): ../libtool --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/valgrind90 ../src/curl -q --output log/10/curl90.out --include --trace-ascii log/10/trace90 --trace-time http://127.0.0.1:36145/90 -u testuser:testpass --anyauth -L > log/10/stdout90 2> log/10/stderr90 ool_main.c:234) === End of file valgrind84 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/11/valgrind85 ../src/curl -q --output log/11/curl85.out --include --trace-ascii log/11/trace85 --trace-time http://127.0.0.1:35843/we/want/that/page/85 -x 127.0.0.1:35843 --user iam:myself --proxy-user testing:this > log/11/stdout85 2> log/11/stderr85 85: 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 85 === Start of file server.cmd Testnum 85 === End of file server.cmd === Start of file valgrind85 ==79342== ==79342== Process terminating with default action of signal 4 (SIGILL) ==79342== Illegal opcode at address 0x10B06D ==79342== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79342== by 0x10B06D: main (tool_main.c:234) === End of file valgrind85 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/2/valgrind86 ../src/curl -q --include --trace-ascii log/2/trace86 --trace-time "http://127.0.0.1:44205/[860001-860003]" -o "log/2/dumpit#1.dump" > log/2/stdout86 2> log/2/stderr86 86: 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 86 === Start of file server.cmd Testnum 86 === End of file server.cmd === Start of file valgrind86 ==79354== ==79354== Process terminating with default action of signal 4 (SIGILL) ==79354== Illegal opcode at address 0x10B06D ==79354== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79354== by 0x10B06D: main (tool_main.c:234) === End of file valgrind86 CMD (0): ../src/curl --max-time 13 --output log/3/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:45097/verifiedserver" 2>log/3/http2_verify.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/7/valgrind89 ../src/curl -q --output log/7/curl89.out --include --trace-ascii log/7/trace89 --trace-time http://127.0.0.1:35853/89 -u testuser:testpass --ntlm -L > log/7/stdout89 2> log/7/stderr89 CMD (33792): ../libtool --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/valgrind88 ../src/curl -q --output log/4/curl88.out --include --trace-ascii log/4/trace88 --trace-time http://127.0.0.1:41947/88 -T log/4/put88 -u testuser:testpass --digest > log/4/stdout88 2> log/4/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/1/valgrind92 ../src/curl -q --output log/1/curl92.out --include --trace-ascii log/1/trace92 --trace-time http://127.0.0.1:39283/want/92 -C 87 > log/1/stdout92 2> log/1/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/12/valgrind91 ../src/curl -q --output log/12/curl91.out --include --trace-ascii log/12/trace91 --trace-time http://127.0.0.1:44175/91 --anyauth -u mydomain\\myself:secret > log/12/stdout91 2> log/12/stderr91 CMD (0): ../src/curl --max-time 13 --output log/9/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:44975/verifiedserver" 2>log/9/http2_verify.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/8/valgrind93 ../src/curl -q --output log/8/curl93.out --include --trace-ascii log/8/trace93 --trace-time http://127.0.0.1:33791/93 -x 127.0.0.1:33791 > log/8/stdout93 2> log/8/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/6/valgrind94 ../src/curl -q --output log/6/curl94.out --include --trace-ascii log/6/trace94 --trace-time https://test.anything.really.com:94 --proxy1.0 127.0.0.1:41583 > log/6/stdout94 2> log/6/stderr94 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/5/valgrind87 ../src/curl -q --include --trace-ascii log/5/trace87 --trace-time "http://127.0.0.1:33519/[870001-870002]" -o "log/5/dumpit87-#2.dump" > log/5/stdout87 2> log/5/stderr87 87: output (log/5/dumpit87-#2.dump) FAILED: --- log/5/check-expected 2024-05-23 11:15:48.996417045 +0200 +++ log/5/check-generated 2024-05-23 11:15:48.996417045 +0200 @@ -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/5/ 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 server.cmd Testnum 87 === End of file server.cmd === Start of file valgrind87 ==79441== ==79441== Process terminating with default action of signal 4 (SIGILL) ==79441== Illegal opcode at address 0x10B06D ==79441== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79441== by 0x10B06D: main (tool_main.c:234) === End of file valgrind87 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/10/valgrind90 ../src/curl -q --output log/10/curl90.out --include --trace-ascii log/10/trace90 --trace-time http://127.0.0.1:36145/90 -u testuser:testpass --anyauth -L > log/10/stdout90 2> log/10/stderr90 90: 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 90 === Start of file server.cmd Testnum 90 === End of file server.cmd === Start of file valgrind90 ==79467== ==79467== Process terminating with default action of signal 4 (SIGILL) ==79467== Illegal opcode at address 0x10B06D ==79467== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79467== by 0x10B06D: main (tool_main.c:234) === End of file valgrind90 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/7/valgrind89 ../src/curl -q --output log/7/curl89.out --include --trace-ascii log/7/trace89 --trace-time http://127.0.0.1:35853/89 -u testuser:testpass --ntlm -L > log/7/stdout89 2> log/7/stderr89 89: 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 89 === Start of file server.cmd Testnum 89 === End of file server.cmd === Start of file valgrind89 ==79473== ==79473== Process terminating with default action of signal 4 (SIGILL) ==79473== Illegal opcode at address 0x10B06D ==79473== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79473== by 0x10B06D: main (tool_main.c:234) === End of file valgrind89 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/4/valgrind88 ../src/curl -q --output log/4/curl88.out --include --trace-ascii log/4/trace88 --trace-time http://127.0.0.1:41947/88 -T log/4/put88 -u testuser:testpass --digest > log/4/stdout88 2> log/4/stderr88 88: 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 88 === 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 valgrind88 ==79454== ==79454== Process terminating with default action of signal 4 (SIGILL) ==79454== Illegal opcode at address 0x10B06D ==79454== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79454== by 0x10B06D: main (tool_main.c:234) === End of file valgrind88 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/1/valgrind92 ../src/curl -q --output log/1/curl92.out --include --trace-ascii log/1/trace92 --trace-time http://127.0.0.1:39283/want/92 -C 87 > log/1/stdout92 2> log/1/stderr92 92: 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 92 === Start of file server.cmd Testnum 92 === End of file server.cmd === Start of file valgrind92 ==79639== ==79639== Process terminating with default action of signal 4 (SIGILL) ==79639== Illegal opcode at address 0x10B06D ==79639== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79639== by 0x10B06D: main (tool_main.c:234) === End of file valgrind92 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/12/valgrind91 ../src/curl -q --output log/12/curl91.out --include --trace-ascii log/12/trace91 --trace-time http://127.0.0.1:44175/91 --anyauth -u mydomain\\myself:secret > log/12/stdout91 2> log/12/stderr91 91: 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 91 === Start of file server.cmd Testnum 91 === End of file server.cmd === Start of file valgrind91 ==79640== ==79640== Process terminating with default action of signal 4 (SIGILL) ==79640== Illegal opcode at address 0x10B06D ==79640== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79640== by 0x10B06D: main (tool_main.c:234) === End of file valgrind91 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/8/valgrind93 ../src/curl -q --output log/8/curl93.out --include --trace-ascii log/8/trace93 --trace-time http://127.0.0.1:33791/93 -x 127.0.0.1:33791 > log/8/stdout93 2> log/8/stderr93 93: 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 93 === Start of file server.cmd Testnum 93 === End of file server.cmd === Start of file valgrind93 ==79738== ==79738== Process terminating with default action of signal 4 (SIGILL) ==79738== Illegal opcode at address 0x10B06D ==79738== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79738== by 0x10B06D: 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/6/valgrind94 ../src/curl -q --output log/6/curl94.out --include --trace-ascii log/6/trace94 --trace-time https://test.anything.really.com:94 --proxy1.0 127.0.0.1:41583 > log/6/stdout94 2> log/6/stderr94 94: 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 94 === Start of file server.cmd Testnum 94 === End of file server.cmd === Start of file valgrind94 ==79783== ==79783== Process termiCMD (33792): ../libtool --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/valgrind97 ../src/curl -q --output log/2/curl97.out --include --trace-ascii log/2/trace97 --trace-time -d "hejsanallabarn" -H "Content-Type: silly/type" http://127.0.0.1:44205/97 > log/2/stdout97 2> log/2/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/5/valgrind98 ../src/curl -q --output log/5/curl98.out --include --trace-ascii log/5/trace98 --trace-time -T - -H "Transfer-Encoding:" -H "Content-Length: 14" http://127.0.0.1:33519/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/10/valgrind99 ../src/curl -q --output log/10/curl99.out --include --trace-ascii log/10/trace99 --trace-time http://127.0.0.1:36145/99 -C 9999999999 > log/10/stdout99 2> log/10/stderr99 CMD (33792): ../libtool --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/valgrind80 ../src/curl -q --output log/3/curl80.out --include --trace-ascii log/3/trace80 --trace-time http://test.80:46313/we/want/that/page/80 -p --proxy1.0 127.0.0.1:45097 --user iam:myself --proxy-user youare:yourself -A "" > log/3/stdout80 2> log/3/stderr80 CMD (33792): ../libtool --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/valgrind83 ../src/curl -q --output log/9/curl83.out --include --trace-ascii log/9/trace83 --trace-time http://test.83:40247/we/want/that/page/83 -p -x 127.0.0.1:44975 --user 'iam:my:;self' > log/9/stdout83 2> log/9/stderr83 nating with default action of signal 4 (SIGILL) ==79783== Illegal opcode at address 0x10B06D ==79783== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79783== by 0x10B06D: main (tool_main.c:234) === End of file valgrind94 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/2/valgrind97 ../src/curl -q --output log/2/curl97.out --include --trace-ascii log/2/trace97 --trace-time -d "hejsanallabarn" -H "Content-Type: silly/type" http://127.0.0.1:44205/97 > log/2/stdout97 2> log/2/stderr97 97: 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 97 === Start of file server.cmd Testnum 97 === End of file server.cmd === Start of file valgrind97 ==79839== ==79839== Process terminating with default action of signal 4 (SIGILL) ==79839== Illegal opcode at address 0x10B06D ==79839== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79839== by 0x10B06D: main (tool_main.c:234) === End of file valgrind97 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-time -T - -H "Transfer-Encoding:" -H "Content-Length: 14" http://127.0.0.1:33519/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 server.cmd Testnum 98 === End of file server.cmd === Start of file stdin-for-98 data on stdin === End of file stdin-for-98 === Start of file valgrind98 ==79908== ==79908== Process terminating with default action of signal 4 (SIGILL) ==79908== Illegal opcode at address 0x10B06D ==79908== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79908== by 0x10B06D: main (tool_main.c:234) === End of file valgrind98 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/10/valgrind99 ../src/curl -q --output log/10/curl99.out --include --trace-ascii log/10/trace99 --trace-time http://127.0.0.1:36145/99 -C 9999999999 > log/10/stdout99 2> log/10/stderr99 99: 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 99 === Start of file server.cmd Testnum 99 === End of file server.cmd === Start of file valgrind99 ==79913== ==79913== Process terminating with default action of signal 4 (SIGILL) ==79913== Illegal opcode at address 0x10B06D ==79913== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79913== by 0x10B06D: main (tool_main.c:234) === End of file valgrind99 startnew: perl -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: ../src/curl --max-time 13 --output log/3/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:45097/verifiedserver" 2>log/3/http2_verify.log RUN: HTTP2 server is on PID 79136 port 45097 * pid http-proxy => 79136 79136 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/3/valgrind80 ../src/curl -q --output log/3/curl80.out --include --trace-ascii log/3/trace80 --trace-time http://test.80:46313/we/want/that/page/80 -p --proxy1.0 127.0.0.1:45097 --user iam:myself --proxy-user youare:yourself -A "" > log/3/stdout80 2> log/3/stderr80 80: 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 80 === Start of file http2_server.log 11:15:47.513962 Run as proxy, CONNECT to host 127.0.0.1 11:15:47.514157 Running HTTP IPv4 version on port 45097 11:15:47.514188 Wrote pid 79136 to log/3/server/http2_server.pid 11:15:47.514207 Wrote port 45097 to log/3/server/http2_server.port 11:15:48.517388 ====> Client connect 11:15:48.517411 accept_connection 3 returned 4 11:15:48.517423 accept_connection 3 returned 0 11:15:48.517435 Read 92 bytes 11:15:48.517443 Process 92 bytes request 11:15:48.517462 Got request: GET /verifiedserver HTTP/1.1 11:15:48.517470 Are-we-friendly question received 11:15:48.517493 Wrote request (92 bytes) input to log/3/proxy.input 11:15:48.517513 Identifying ourselves as friends 11:15:48.517576 Response sent (56 bytes) and written to log/3/proxy.response 11:15:48.517585 special request received, no persistency 11:15:48.517592 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:45097... * Connected to 127.0.0.1 (127.0.0.1) port 45097 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45097 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < 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: 79136 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 79136 === End of file proxy.response === Start of file server.cmd Testnum 80 === End of file server.cmd === Start of file valgrind80 ==79911== ==79911== Process terminating with default action of signal 4 (SIGILL) ==79911== Illegal opcode at address 0x10B06D ==79911== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==79911== by 0x10B06D: main (tool_main.c:234) === End of file valgrind80 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/9/server/http2_server.pid" --logfile "log/9/http2_server.log" --logdir "log/9" --portfile log/9/server/http2_server.port --config log/9/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/9/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:44975/verifiedserver" 2>log/9/http2_verify.log RUN: HTTP2 server is on PID 79238 port 44975 * pid http-proxy => 79238 79238 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/9/valgrind83 ../src/curl -q --output log/9/curl83.out --include --trace-ascii log/9/trace83 --trace-time http://test.83:40247/we/want/that/page/83 -p -x 127.0.0.1:44975 --user 'iam:my:;self' > log/9/stdout83 2> log/9/stderr83 83: 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 83 === Start of file http2_server.log 11:15:48.632291 Run as proxy, CONNECT to host 127.0.0.1 11:15:48.632501 Running HTTP IPv4 version on port 44975 11:15:48.632538 Wrote pid 79238 to log/9/server/http2_server.pid 11:15:48.632560 Wrote port 44975 to log/9/server/http2_server.port 11:15:49.635310 ====> Client connect 11:15:49.635323 accept_connection 3 returned 4 11:15:49.635333 accept_connection 3 returned 0 11:15:49.635CMD (0): ../src/curl --max-time 13 --output log/11/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:42527/verifiedserver" 2>log/11/http2_verify.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/11/valgrind95 ../src/curl -q --output log/11/curl95.out --include --trace-ascii log/11/trace95 --trace-time http://test.95:35843/we/want/that/page/95 -p -x 127.0.0.1:42527 -d "datatopost=ohthatsfunyesyes" > log/11/stdout95 2> log/11/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/7/valgrind100 ../src/curl -q --output log/7/curl100.out --include --trace-ascii log/7/trace100 --trace-time ftp://127.0.0.1:45903/test-100/ > log/7/stdout100 2> log/7/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/1/valgrind102 ../src/curl -q --output log/1/curl102.out --include --trace-ascii log/1/trace102 --trace-time ftp://127.0.0.1:35701/102 > log/1/stdout102 2> log/1/stderr102 342 Read 92 bytes 11:15:49.635348 Process 92 bytes request 11:15:49.635362 Got request: GET /verifiedserver HTTP/1.1 11:15:49.635367 Are-we-friendly question received 11:15:49.635381 Wrote request (92 bytes) input to log/9/proxy.input 11:15:49.635395 Identifying ourselves as friends 11:15:49.635436 Response sent (56 bytes) and written to log/9/proxy.response 11:15:49.635442 special request received, no persistency 11:15:49.635447 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:44975... * Connected to 127.0.0.1 (127.0.0.1) port 44975 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:44975 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < 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: 79238 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 79238 === End of file proxy.response === Start of file server.cmd Testnum 83 === End of file server.cmd === Start of file valgrind83 ==80078== ==80078== Process terminating with default action of signal 4 (SIGILL) ==80078== Illegal opcode at address 0x10B06D ==80078== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80078== by 0x10B06D: main (tool_main.c:234) === End of file valgrind83 startnew: perl -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: ../src/curl --max-time 13 --output log/11/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:42527/verifiedserver" 2>log/11/http2_verify.log RUN: HTTP2 server is on PID 79837 port 42527 * pid http-proxy => 79837 79837 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/11/valgrind95 ../src/curl -q --output log/11/curl95.out --include --trace-ascii log/11/trace95 --trace-time http://test.95:35843/we/want/that/page/95 -p -x 127.0.0.1:42527 -d "datatopost=ohthatsfunyesyes" > log/11/stdout95 2> log/11/stderr95 95: 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 95 === Start of file http2_server.log 11:15:48.399160 Run as proxy, CONNECT to host 127.0.0.1 11:15:48.399339 Running HTTP IPv4 version on port 42527 11:15:48.399369 Wrote pid 79837 to log/11/server/http2_server.pid 11:15:48.399397 Wrote port 42527 to log/11/server/http2_server.port 11:15:49.399708 ====> Client connect 11:15:49.399722 accept_connection 3 returned 4 11:15:49.399731 accept_connection 3 returned 0 11:15:49.399739 Read 92 bytes 11:15:49.399745 Process 92 bytes request 11:15:49.399758 Got request: GET /verifiedserver HTTP/1.1 11:15:49.399764 Are-we-friendly question received 11:15:49.399777 Wrote request (92 bytes) input to log/11/proxy.input 11:15:49.399791 Identifying ourselves as friends 11:15:49.399831 Response sent (56 bytes) and written to log/11/proxy.response 11:15:49.399837 special request received, no persistency 11:15:49.399842 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:42527... * Connected to 127.0.0.1 (127.0.0.1) port 42527 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42527 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < 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: 79837 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 79837 === End of file proxy.response === Start of file server.cmd Testnum 95 === End of file server.cmd === Start of file valgrind95 ==80159== ==80159== Process terminating with default action of signal 4 (SIGILL) ==80159== Illegal opcode at address 0x10B06D ==80159== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80159== by 0x10B06D: main (tool_main.c:234) === End of file valgrind95 startnew: perl -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 45903 (log/7/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:45903/verifiedserver" 2>log/7/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 79905 port 45903 * pid ftp => 79905 79905 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/7/valgrind100 ../src/curl -q --output log/7/curl100.out --include --trace-ascii log/7/trace100 --trace-time ftp://127.0.0.1:45903/test-100/ > log/7/stdout100 2> log/7/stderr100 100: 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 100 === Start of file ftp_server.log 11:15:49.048229 FTP server listens on port IPv4/45903 11:15:49.048300 logged pid 79905 in log/7/server/ftp_server.pid 11:15:49.048319 Awaiting input 11:15:50.025037 ====> Client connect 11:15:50.025139 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.025321 < "USER anonymous" 11:15:50.025343 > "331 We are happy you popped in![CR][LF]" 11:15:50.025444 < "PASS ftp@example.com" 11:15:50.025460 > "230 Welcome you silly person[CR][LF]" 11:15:50.025543 < "PWD" 11:15:50.025560 > "257 "/" is current directory[CR][LF]" 11:15:50.025644 < "EPSV" 11:15:50.025658 ====> Passive DATA channel requested by client 11:15:50.025665 DATA sockfilt for passive data channel starting... 11:15:50.026608 DATA sockfilt for passive data channel started (pid 80240) 11:15:50.026673 DATA sockfilt for passive data channel listens on port 41933 11:15:50.026698 > "229 Entering Passive Mode (|||41933|)[LF]" 11:15:50.026706 Client has been notified that DATA conn will be accepted on port 41933 11:15:50.026850 Client connects to port 41933 11:15:50.026868 ====> Client established passive DATA connection on port 41933 11:15:50.026904 < "TYPE I" 11:15:50.026919 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.027000 < "SIZE verifiedserver" 11:15:50.027020 > "213 17[CR][LF]" 11:15:50.027097 < "RETR verifiedserver" 11:15:50.027114 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.027156 =====> Closing passive DATA connection... 11:15:50.027165 Server disconnects passive DATA connection 11:15:50.027294 Server disconnected passive DATA connection 11:15:50.027312 DATA sockfilt for passive data channel quits (pid 80240) 11:15:50.027426 DATA sockfilt for passive data channel quit (pid 80240) 11:15:50.027437 =====> Closed passive DATA connection 11:15:50.027451 > "226 File transfer complete[CR][LF]" 11:15:50.072347 < "QUIT" 11:15:50.072393 > "221 bye bye baby[CR][LF]" 11:15:50.073264 MAIN sockfilt said DISC 11:15:50.073286 ====> Client disconnected 11:15:50.073324 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.565362 Running IPv4 version 11:15:49.565419 Listening on port 45903 11:15:49.565447 Wrote pid 80036 to log/7/server/ftp_sockctrl.pid 11:15:49.565468 Wrote port 45903 to log/7/server/ftp_server.port 11:15:49.565480 Received PING (on stdin) 11:15:50.542303 ====> Client connect 11:15:50.542466 Received DATA (on stdin) 11:15:50.542476 > 160 bytes data, server => client 11:15:50.542482 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.542488 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.542494 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.542540 < 16 bytes data, client => server 11:15:50.542546 'USER anonymous\r\n' 11:15:50.542664 Received DATA (on stdin) 11:15:50.542671 > 33 bytes data, server => client 11:15:50.542677 '331 We are happy you popped in!\r\n' 11:15:50.542709 < 22 bytes data, client => server 11:15:50.542718 'PASS ftp@example.com\r\n' 11:15:50.542780 Received DATA (on stdin) 11:15:50.542786 > 30 bytes data, server => client 11:15:50.542791 '230 Welcome you silly person\r\n' 11:15:50.542821 < 5 bytes data, client => server 11:15:50.542826 'PWD\r\n' 11:15:50.542878 Received DATA (on stdin) 11:15:50.542884 > 30 bytes data, server => client 11:15:50.542890 '257 "/" is current directory\r\n' 11:15:50.542922 < 6 bytes data, client => server 11:15:50.542927 'EPSV\r\n' 11:15:50.544028 Received DATA (on stdin) 11:15:50.544036 > 38 bytes data, server => client 11:15:50.544042 '229 Entering Passive Mode (|||41933|)\n' 11:15:50.544126 < 8 bytes data, client => server 11:15:50.544134 'TYPE I\r\n' 11:15:50.544238 Received DATA (on stdin) 11:15:50.544244 > 33 bytes data, server => client 11:15:50.544250 '200 I modify TYPE as you wanted\r\n' 11:15:50.544278 < 21 bytes data, client => server 11:15:50.544284 'SIZE verifiedserver\r\n' 11:15:50.544340 Received DATA (on stdin) 11:15:50.544345 > 8 bytes data, server => client 11:15:50.544350 '213 17\r\n' 11:15:50.544376 < 21 bytes data, client => server 11:15:50.544382 'RETR verifiedserver\r\n' 11:15:50.544537 Received DATA (on stdin) 11:15:50.544543 > 29 bytes data, server => client 11:15:50.544548 '150 Binary junk (17 bytes).\r\n' 11:15:50.544771 Received DATA (on stdin) 11:15:50.544778 > 28 bytes data, server => client 11:15:50.544784 '226 File transfer complete\r\n' 11:15:50.589522 < 6 bytes data, client => server 11:15:50.589547 'QUIT\r\n' 11:15:50.589720 Received DATA (on stdin) 11:15:50.589730 > 18 bytes data, server => client 11:15:50.589738 '221 bye bye baby\r\n' 11:15:50.590549 ====> Client disconnect 11:15:50.590649 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.543818 Running IPv4 version 11:15:50.543861 Listening on port 41933 11:15:50.543884 Wrote pid 80240 to log/7/server/ftp_sockdata.pid 11:15:50.543894 Received PING (on stdin) 11:15:50.543945 Received PORT (on stdin) 11:15:50.544144 ====> Client connect 11:15:50.544486 Received DATA (on stdin) 11:15:50.544493 > 17 bytes data, server => client 11:15:50.544498 'WE ROOLZ: 79905\r\n' 11:15:50.544516 Received DISC (on stdin) 11:15:50.544523 ====> Client forcibly disconnected 11:15:50.544637 Received QUIT (on stdin) 11:15:50.544644 quits 11:15:50.544668 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 100 === End of file server.cmd === Start of file valgrind100 ==80274== ==80274== Process terminating with default action of signal 4 (SIGILL) ==80274== Illegal opcode at address 0x10B06D ==80274== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80274== by 0x10B06D: main (tool_main.c:234) === End of file valgrind100 startnew: perl -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 35701 (log/1/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:35701/verifiedserver" 2>log/1/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 79941 port 35701 * pid ftp => 79941 79941 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/1/valgrind102 ../src/curl -q --output log/1/curl102.out --include --trace-ascii log/1/trace102 --trace-time ftp://127.0.0.1:35701/102 > log/1/stdout102 2> log/1/stderr102 102: 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 102 === Start of file ftp_server.log 11:15:49.053754 FTP server listens on port IPv4/35701 11:15:49.053862 logged pid 79941 in log/1/server/ftp_server.pid 11:15:49.053885 Awaiting input 11:15:50.036359 ====> Client connect 11:15:50.036465 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.036632 < "USER anonymous" 11:15:50.036653 > "331 We are happy you popped in![CR][LF]" 11:15:50.036742 < "PASS ftp@example.com" 11:15:50.036755 > "230 Welcome you silly person[CR][LF]" 11:15:50.036834 < "PWD" 11:15:50.036850 > "257 "/" is current directory[CR][LF]" 11:15:50.036932 < "EPSV" 11:15:50.036948 ====> Passive DATA channel requested by client 11:15:50.036955 DATA sockfilt for passive data channel starting... 11:15:50.038018 DATA sockfilt for passive data channel started (pid 80255) 11:15:50.038099 DATA sockfilt for passive data channel listens on port 43367 11:15:50.038126 > "229 Entering Passive Mode (|||43367|)[LF]" 11:15:50.038137 Client has been notified that DATA conn will be accepted on port 43367 11:15:50.038311 Client connects to port 43367 11:15:50.038332 ====> Client established passive DATA connection on port 43367 11:15:50.038377 < "TYPE I" 11:15:50.038396 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.038500 < "SIZE verifiedserver" 11:15:50.038522 > "213 17[CR][LF]" 11:15:50.038619 < "RETR verifiedserver" 11:15:50.038639 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.038693 =====> Closing passive DATA connection... 11:15:50.038704 Server disconnects passive DATA connection 11:15:50.038820 Server disconnected passive DATA connection 11:15:50.038849 DATA sockfilt for passive data channel quits (pid 80255) 11:15:50.038992 DATA sockfilt for passive data channel quit (pid 80255) 11:15:50.039010 =====> Closed passive DATA connection 11:15:50.039029 > "226 File transfer complete[CR][LF]" 11:15:50.082321 < "QUIT" 11:15:50.082373 > "221 bye bye baby[CR][LF]" 11:15:50.082604 MAIN sockfilt said DISC 11:15:50.082623 ====> Client disconnected 11:15:50.082651 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.570845 Running IPv4 version 11:15:49.570911 Listening on port 35701 11:15:49.570938 Wrote pid 80054 to log/1/server/ftp_sockctrl.pid 11:15:49.570959 Wrote port 35701 to log/1/server/ftp_server.port 11:15:49.571004 Received PING (on stdin) 11:15:50.553627 ====> Client connect 11:15:50.553791 Received DATA (on stdin) 11:15:50.553798 > 160 bytes data, server => client 11:15:50.553804 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.553810 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.553815 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.553860 < 16 bytes data, client => server 11:15:50.553866 'USER anonymous\r\n' 11:15:50.553974 Received DATA (on stdin) 11:15:50.553981 > 33 bytes data, server => client 11:15:50.553986 '331 We are happy you popped in!\r\n' 11:15:50.554017 < 22 bytes data, client => server 11:15:50.554023 'PASS ftp@example.com\r\n' 11:15:50.554075 Received DATA (on stdin) 11:15:50.554080 > 30 bytes data, server => client 11:15:50.554086 '230 Welcome you silly person\r\n' 11:15:50.554112 < 5 bytes data, client => server 11:15:50.554117 'PWD\r\n' 11:15:50.554168 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/4/valgrind101 ../src/curl -q --output log/4/curl101.out --include --trace-ascii log/4/trace101 --trace-time ftp://127.0.0.1:36137/ -P 127.0.0.1 > log/4/stdout101 2> log/4/stderr101 n stdin) 11:15:50.554173 > 30 bytes data, server => client 11:15:50.554179 '257 "/" is current directory\r\n' 11:15:50.554209 < 6 bytes data, client => server 11:15:50.554215 'EPSV\r\n' 11:15:50.555462 Received DATA (on stdin) 11:15:50.555472 > 38 bytes data, server => client 11:15:50.555480 '229 Entering Passive Mode (|||43367|)\n' 11:15:50.555578 < 8 bytes data, client => server 11:15:50.555588 'TYPE I\r\n' 11:15:50.555718 Received DATA (on stdin) 11:15:50.555726 > 33 bytes data, server => client 11:15:50.555733 '200 I modify TYPE as you wanted\r\n' 11:15:50.555770 < 21 bytes data, client => server 11:15:50.555777 'SIZE verifiedserver\r\n' 11:15:50.555844 Received DATA (on stdin) 11:15:50.555851 > 8 bytes data, server => client 11:15:50.555857 '213 17\r\n' 11:15:50.555891 < 21 bytes data, client => server 11:15:50.555898 'RETR verifiedserver\r\n' 11:15:50.556067 Received DATA (on stdin) 11:15:50.556125 > 29 bytes data, server => client 11:15:50.556135 '150 Binary junk (17 bytes).\r\n' 11:15:50.556353 Received DATA (on stdin) 11:15:50.556363 > 28 bytes data, server => client 11:15:50.556370 '226 File transfer complete\r\n' 11:15:50.599524 < 6 bytes data, client => server 11:15:50.599548 'QUIT\r\n' 11:15:50.599705 Received DATA (on stdin) 11:15:50.599719 > 18 bytes data, server => client 11:15:50.599730 '221 bye bye baby\r\n' 11:15:50.599890 ====> Client disconnect 11:15:50.599970 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.555209 Running IPv4 version 11:15:50.555261 Listening on port 43367 11:15:50.555285 Wrote pid 80255 to log/1/server/ftp_sockdata.pid 11:15:50.555297 Received PING (on stdin) 11:15:50.555363 Received PORT (on stdin) 11:15:50.555601 ====> Client connect 11:15:50.556027 Received DATA (on stdin) 11:15:50.556036 > 17 bytes data, server => client 11:15:50.556043 'WE ROOLZ: 79941\r\n' 11:15:50.556077 Received DISC (on stdin) 11:15:50.556088 ====> Client forcibly disconnected 11:15:50.556185 Received QUIT (on stdin) 11:15:50.556198 quits 11:15:50.556231 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 102 === End of file server.cmd === Start of file valgrind102 ==80312== ==80312== Process terminating with default action of signal 4 (SIGILL) ==80312== Illegal opcode at address 0x10B06D ==80312== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80312== by 0x10B06D: main (tool_main.c:234) === End of file valgrind102 startnew: perl -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 36137 (log/4/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:36137/verifiedserver" 2>log/4/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 79910 port 36137 * pid ftp => 79910 79910 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/4/valgrind101 ../src/curl -q --output log/4/curl101.out --include --trace-ascii log/4/trace101 --trace-time ftp://127.0.0.1:36137/ -P 127.0.0.1 > log/4/stdout101 2> log/4/stderr101 101: 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 101 === Start of file ftp_server.log 11:15:49.046756 FTP server listens on port IPv4/36137 11:15:49.046815 logged pid 79910 in log/4/server/ftp_server.pid 11:15:49.046831 Awaiting input 11:15:50.027916 ====> Client connect 11:15:50.028016 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.028179 < "USER anonymous" 11:15:50.028201 > "331 We are happy you popped in![CR][LF]" 11:15:50.028291 < "PASS ftp@example.com" 11:15:50.028305 > "230 Welcome you silly person[CR][LF]" 11:15:50.028382 < "PWD" 11:15:50.028398 > "257 "/" is current directory[CR][LF]" 11:15:50.028478 < "EPSV" 11:15:50.028493 ====> Passive DATA channel requested by client 11:15:50.028500 DATA sockfilt for passive data channel starting... 11:15:50.029350 DATA sockfilt for passive data channel started (pid 80247) 11:15:50.029416 DATA sockfilt for passive data channel listens on port 42983 11:15:50.029440 > "229 Entering Passive Mode (|||42983|)[LF]" 11:15:50.029448 Client has been notified that DATA conn will be accepted on port 42983 11:15:50.029574 Client connects to port 42983 11:15:50.029592 ====> Client established passive DATA connection on port 42983 11:15:50.029656 < "TYPE I" 11:15:50.029676 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.029771 < "SIZE verifiedserver" 11:15:50.029795 > "213 17[CR][LF]" 11:15:50.029876 < "RETR verifiedserver" 11:15:50.029894 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.029937 =====> Closing passive DATA connection... 11:15:50.029945 Server disconnects passive DATA connection 11:15:50.030074 Server disconnected passive DATA connection 11:15:50.030092 DATA sockfilt for passive data channel quits (pid 80247) 11:15:50.030203 DATA sockfilt for passive data channel quit (pid 80247) 11:15:50.030215 =====> Closed passive DATA connection 11:15:50.030230 > "226 File transfer complete[CR][LF]" 11:15:50.072347 < "QUIT" 11:15:50.072394 > "221 bye bye baby[CR][LF]" 11:15:50.073133 MAIN sockfilt said DISC 11:15:50.073159 ====> Client disconnected 11:15:50.073209 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.563827 Running IPv4 version 11:15:49.563892 Listening on port 36137 11:15:49.563914 Wrote pid 80028 to log/4/server/ftp_sockctrl.pid 11:15:49.563931 Wrote port 36137 to log/4/server/ftp_server.port 11:15:49.564020 Received PING (on stdin) 11:15:50.545186 ====> Client connect 11:15:50.545342 Received DATA (on stdin) 11:15:50.545349 > 160 bytes data, server => client 11:15:50.545355 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.545361 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.545366 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.545409 < 16 bytes data, client => server 11:15:50.545415 'USER anonymous\r\n' 11:15:50.545522 Received DATA (on stdin) 11:15:50.545528 > 33 bytes data, server => client 11:15:50.545534 '331 We are happy you popped in!\r\n' 11:15:50.545565 < 22 bytes data, client => server 11:15:50.545571 'PASS ftp@example.com\r\n' 11:15:50.545624 Received DATA (on stdin) 11:15:50.545630 > 30 bytes data, server => client 11:15:50.545635 '230 Welcome you silly person\r\n' 11:15:50.545662 < 5 bytes data, client => server 11:15:50.545667 'PWD\r\n' 11:15:50.545716 Received DATA (on stdin) 11:15:50.545721 > 30 bytes data, server => client 11:15:50.545727 '257 "/" is current directory\r\n' 11:15:50.545757 < 6 bytes data, client => server 11:15:50.545763 'EPSV\r\n' 11:15:50.546773 Received DATA (on stdin) 11:15:50.546782 > 38 bytes data, server => client 11:15:50.546789 '229 Entering Passive Mode (|||42983|)\n' 11:15:50.546919 < 8 bytes data, client => server 11:15:50.546926 'TYPE I\r\n' 11:15:50.546998 Received DATA (on stdin) 11:15:50.547006 > 33 bytes data, server => client 11:15:50.547012 '200 I modify TYPE as you wanted\r\n' 11:15:50.547047 < 21 bytes data, client => server 11:15:50.547053 'SIZE verifiedserver\r\n' 11:15:50.547115 Received DATA (on stdin) 11:15:50.547121 > 8 bytes data, server => client 11:15:50.547126 '213 17\r\n' 11:15:50.547154 < 21 bytes data, client => server 11:15:50.547160 'RETR verifiedserver\r\n' 11:15:50.547319 Received DATA (on stdin) 11:15:50.547326 > 29 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/12/valgrind103 ../src/curl -q --output log/12/curl103.out --include --trace-ascii log/12/trace103 --trace-time ftp://127.0.0.1:41005/a/path/103 -P - > log/12/stdout103 2> log/12/stderr103 nt 11:15:50.547331 '150 Binary junk (17 bytes).\r\n' 11:15:50.547551 Received DATA (on stdin) 11:15:50.547558 > 28 bytes data, server => client 11:15:50.547564 '226 File transfer complete\r\n' 11:15:50.589527 < 6 bytes data, client => server 11:15:50.589551 'QUIT\r\n' 11:15:50.589724 Received DATA (on stdin) 11:15:50.589734 > 18 bytes data, server => client 11:15:50.589743 '221 bye bye baby\r\n' 11:15:50.590413 ====> Client disconnect 11:15:50.590536 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.546561 Running IPv4 version 11:15:50.546600 Listening on port 42983 11:15:50.546623 Wrote pid 80247 to log/4/server/ftp_sockdata.pid 11:15:50.546633 Received PING (on stdin) 11:15:50.546687 Received PORT (on stdin) 11:15:50.546867 ====> Client connect 11:15:50.547266 Received DATA (on stdin) 11:15:50.547274 > 17 bytes data, server => client 11:15:50.547280 'WE ROOLZ: 79910\r\n' 11:15:50.547297 Received DISC (on stdin) 11:15:50.547304 ====> Client forcibly disconnected 11:15:50.547417 Received QUIT (on stdin) 11:15:50.547423 quits 11:15:50.547445 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 101 === End of file server.cmd === Start of file valgrind101 ==80275== ==80275== Process terminating with default action of signal 4 (SIGILL) ==80275== Illegal opcode at address 0x10B06D ==80275== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80275== by 0x10B06D: main (tool_main.c:234) === End of file valgrind101 startnew: perl -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 41005 (log/12/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:41005/verifiedserver" 2>log/12/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80056 port 41005 * pid ftp => 80056 80056 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/12/valgrind103 ../src/curl -q --output log/12/curl103.out --include --trace-ascii log/12/trace103 --trace-time ftp://127.0.0.1:41005/a/path/103 -P - > log/12/stdout103 2> log/12/stderr103 103: 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 103 === Start of file ftp_server.log 11:15:49.087967 FTP server listens on port IPv4/41005 11:15:49.088028 logged pid 80056 in log/12/server/ftp_server.pid 11:15:49.088044 Awaiting input 11:15:50.073425 ====> Client connect 11:15:50.073528 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.075621 < "USER anonymous" 11:15:50.075653 > "331 We are happy you popped in![CR][LF]" 11:15:50.075792 < "PASS ftp@example.com" 11:15:50.075813 > "230 Welcome you silly person[CR][LF]" 11:15:50.075925 < "PWD" 11:15:50.075944 > "257 "/" is current directory[CR][LF]" 11:15:50.076049 < "EPSV" 11:15:50.076067 ====> Passive DATA channel requested by client 11:15:50.076076 DATA sockfilt for passive data channel starting... 11:15:50.077147 DATA sockfilt for passive data channel started (pid 80271) 11:15:50.077230 DATA sockfilt for passive data channel listens on port 38679 11:15:50.077259 > "229 Entering Passive Mode (|||38679|)[LF]" 11:15:50.077271 Client has been notified that DATA conn will be accepted on port 38679 11:15:50.077445 Client connects to port 38679 11:15:50.077468 ====> Client established passive DATA connection on port 38679 11:15:50.077512 < "TYPE I" 11:15:50.077532 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.077636 < "SIZE verifiedserver" 11:15:50.077661 > "213 17[CR][LF]" 11:15:50.077761 < "RETR verifiedserver" 11:15:50.077783 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.077837 =====> Closing passive DATA connection... 11:15:50.077847 Server disconnects passive DATA connection 11:15:50.077963 Server disconnected passive DATA connection 11:15:50.077991 DATA sockfilt for passive data channel quits (pid 80271) 11:15:50.078139 DATA sockfilt for passive data channel quit (pid 80271) 11:15:50.078156 =====> Closed passive DATA connection 11:15:50.078175 > "226 File transfer complete[CR][LF]" 11:15:50.119364 < "QUIT" 11:15:50.119413 > "221 bye bye baby[CR][LF]" 11:15:50.120106 MAIN sockfilt said DISC 11:15:50.120128 ====> Client disconnected 11:15:50.120163 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.605040 Running IPv4 version 11:15:49.605130 Listening on port 41005 11:15:49.605163 Wrote pid 80060 to log/12/server/ftp_sockctrl.pid 11:15:49.605188 Wrote port 41005 to log/12/server/ftp_server.port 11:15:49.605205 Received PING (on stdin) 11:15:50.590697 ====> Client connect 11:15:50.592675 Received DATA (on stdin) 11:15:50.592693 > 160 bytes data, server => client 11:15:50.592704 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.592713 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.592731 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.592806 < 16 bytes data, client => server 11:15:50.592818 'USER anonymous\r\n' 11:15:50.592983 Received DATA (on stdin) 11:15:50.592993 > 33 bytes data, server => client 11:15:50.593002 '331 We are happy you popped in!\r\n' 11:15:50.593049 < 22 bytes data, client => server 11:15:50.593058 'PASS ftp@example.com\r\n' 11:15:50.593138 Received DATA (on stdin) 11:15:50.593147 > 30 bytes data, server => client 11:15:50.593155 '230 Welcome you silly person\r\n' 11:15:50.593198 < 5 bytes data, client => server 11:15:50.593204 'PWD\r\n' 11:15:50.593266 Received DATA (on stdin) 11:15:50.593272 > 30 bytes data, server => client 11:15:50.593279 '257 "/" is current directory\r\n' 11:15:50.593319 < 6 bytes data, client => server 11:15:50.593325 'EPSV\r\n' 11:15:50.594597 Received DATA (on stdin) 11:15:50.594607 > 38 bytes data, server => client 11:15:50.594615 '229 Entering Passive Mode (|||38679|)\n' 11:15:50.594715 < 8 bytes data, client => server 11:15:50.594725 'TYPE I\r\n' 11:15:50.594854 Received DATA (on stdin) 11:15:50.594862 > 33 bytes data, server => client 11:15:50.594869 '200 I modify TYPE as you wanted\r\n' 11:15:50.594906 < 21 bytes data, client => server 11:15:50.594912 'SIZE verifiedserver\r\n' 11:15:50.594986 Received DATA (on stdin) 11:15:50.594993 > 8 bytes data, server => client 11:15:50.594999 '213 17\r\n' 11:15:50.595033 < 21 bytes data, client => server 11:15:50.595039 'RETR verifiedserver\r\n' 11:15:50.595239 Received DATA (on stdin) 11:15:50.595249 > 29 bytes data, server => client 11:15:50.595258 '150 Binary junk (17 bytes).\r\n' 11:15:50.595498 Received DATA (on stdin) 11:15:50.595507 > 28 bytes data, server => client 11:15:50.595514 '226 File transfer complete\r\n' 11:15:50.636527 < 6 bytes data, client => server 11:15:50.636564 'QUIT\r\n' 11:15:50.636745 Received DATA (on stdin) 11:15:50.636758 > 18 bytes data, server => client 11:15:50.636767 '221 bye bye baby\r\n' 11:15:50.637391 ====> Client disconnect 11:15:50.637483 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.594335 Running IPv4 version 11:15:50.594384 Listening on port 38679 11:15:50.594412 Wrote pid 80271 to log/12/server/ftp_sockdata.pid 11:15:50.594425 Received PING (on stdin) 11:15:50.594490 Received PORT (on stdin) 11:15:50.594738 ====> Client connect 11:15:50.595173 Received DATA (on stdin) 11:15:50.595182 > 17 bytes data, server => client 11:15:50.595189 'WE ROOLZ: 80056\r\n' 11:15:50.595214 Received DISC (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/8/valgrind104 ../src/curl -q --output log/8/curl104.out --include --trace-ascii log/8/trace104 --trace-time ftp://127.0.0.1:43509/a/path/104 --head > log/8/stdout104 2> log/8/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/6/valgrind105 ../src/curl -q --output log/6/curl105.out --include --trace-ascii log/6/trace105 --trace-time ftp://userdude:passfellow@127.0.0.1:35103/105 --use-ascii > log/6/stdout105 2> log/6/stderr105 n) 11:15:50.595223 ====> Client forcibly disconnected 11:15:50.595326 Received QUIT (on stdin) 11:15:50.595337 quits 11:15:50.595367 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 103 === End of file server.cmd === Start of file valgrind103 ==80415== ==80415== Process terminating with default action of signal 4 (SIGILL) ==80415== Illegal opcode at address 0x10B06D ==80415== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80415== by 0x10B06D: main (tool_main.c:234) === End of file valgrind103 startnew: perl -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 43509 (log/8/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:43509/verifiedserver" 2>log/8/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80127 port 43509 * pid ftp => 80127 80127 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/8/valgrind104 ../src/curl -q --output log/8/curl104.out --include --trace-ascii log/8/trace104 --trace-time ftp://127.0.0.1:43509/a/path/104 --head > log/8/stdout104 2> log/8/stderr104 104: 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 104 === Start of file ftp_server.log 11:15:49.193043 FTP server listens on port IPv4/43509 11:15:49.193132 logged pid 80127 in log/8/server/ftp_server.pid 11:15:49.193156 Awaiting input 11:15:50.173954 ====> Client connect 11:15:50.174061 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.174252 < "USER anonymous" 11:15:50.174272 > "331 We are happy you popped in![CR][LF]" 11:15:50.174378 < "PASS ftp@example.com" 11:15:50.174413 > "230 Welcome you silly person[CR][LF]" 11:15:50.174548 < "PWD" 11:15:50.174566 > "257 "/" is current directory[CR][LF]" 11:15:50.174661 < "EPSV" 11:15:50.174677 ====> Passive DATA channel requested by client 11:15:50.174685 DATA sockfilt for passive data channel starting... 11:15:50.175671 DATA sockfilt for passive data channel started (pid 80491) 11:15:50.175753 DATA sockfilt for passive data channel listens on port 41697 11:15:50.175781 > "229 Entering Passive Mode (|||41697|)[LF]" 11:15:50.175793 Client has been notified that DATA conn will be accepted on port 41697 11:15:50.175972 Client connects to port 41697 11:15:50.175993 ====> Client established passive DATA connection on port 41697 11:15:50.176041 < "TYPE I" 11:15:50.176060 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.176170 < "SIZE verifiedserver" 11:15:50.176195 > "213 17[CR][LF]" 11:15:50.176299 < "RETR verifiedserver" 11:15:50.176321 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.176384 =====> Closing passive DATA connection... 11:15:50.176396 Server disconnects passive DATA connection 11:15:50.176573 Server disconnected passive DATA connection 11:15:50.176594 DATA sockfilt for passive data channel quits (pid 80491) 11:15:50.176738 DATA sockfilt for passive data channel quit (pid 80491) 11:15:50.176756 =====> Closed passive DATA connection 11:15:50.176774 > "226 File transfer complete[CR][LF]" 11:15:50.219065 < "QUIT" 11:15:50.219111 > "221 bye bye baby[CR][LF]" 11:15:50.219742 MAIN sockfilt said DISC 11:15:50.219760 ====> Client disconnected 11:15:50.219795 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.710117 Running IPv4 version 11:15:49.710216 Listening on port 43509 11:15:49.710247 Wrote pid 80130 to log/8/server/ftp_sockctrl.pid 11:15:49.710271 Wrote port 43509 to log/8/server/ftp_server.port 11:15:49.710289 Received PING (on stdin) 11:15:50.691208 ====> Client connect 11:15:50.691389 Received DATA (on stdin) 11:15:50.691400 > 160 bytes data, server => client 11:15:50.691407 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.691413 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.691419 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.691470 < 16 bytes data, client => server 11:15:50.691476 'USER anonymous\r\n' 11:15:50.691595 Received DATA (on stdin) 11:15:50.691601 > 33 bytes data, server => client 11:15:50.691607 '331 We are happy you popped in!\r\n' 11:15:50.691639 < 22 bytes data, client => server 11:15:50.691645 'PASS ftp@example.com\r\n' 11:15:50.691734 Received DATA (on stdin) 11:15:50.691772 > 30 bytes data, server => client 11:15:50.691787 '230 Welcome you silly person\r\n' 11:15:50.691820 < 5 bytes data, client => server 11:15:50.691826 'PWD\r\n' 11:15:50.691885 Received DATA (on stdin) 11:15:50.691892 > 30 bytes data, server => client 11:15:50.691897 '257 "/" is current directory\r\n' 11:15:50.691931 < 6 bytes data, client => server 11:15:50.691937 'EPSV\r\n' 11:15:50.693119 Received DATA (on stdin) 11:15:50.693130 > 38 bytes data, server => client 11:15:50.693139 '229 Entering Passive Mode (|||41697|)\n' 11:15:50.693238 < 8 bytes data, client => server 11:15:50.693249 'TYPE I\r\n' 11:15:50.693383 Received DATA (on stdin) 11:15:50.693392 > 33 bytes data, server => client 11:15:50.693399 '200 I modify TYPE as you wanted\r\n' 11:15:50.693438 < 21 bytes data, client => server 11:15:50.693446 'SIZE verifiedserver\r\n' 11:15:50.693518 Received DATA (on stdin) 11:15:50.693525 > 8 bytes data, server => client 11:15:50.693533 '213 17\r\n' 11:15:50.693567 < 21 bytes data, client => server 11:15:50.693574 'RETR verifiedserver\r\n' 11:15:50.693654 Received DATA (on stdin) 11:15:50.693668 > 29 bytes data, server => client 11:15:50.693675 '150 Binary junk (17 bytes).\r\n' 11:15:50.694099 Received DATA (on stdin) 11:15:50.694107 > 28 bytes data, server => client 11:15:50.694113 '226 File transfer complete\r\n' 11:15:50.736221 < 6 bytes data, client => server 11:15:50.736257 'QUIT\r\n' 11:15:50.736440 Received DATA (on stdin) 11:15:50.736450 > 18 bytes data, server => client 11:15:50.736462 '221 bye bye baby\r\n' 11:15:50.737030 ====> Client disconnect 11:15:50.737116 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.692858 Running IPv4 version 11:15:50.692910 Listening on port 41697 11:15:50.692939 Wrote pid 80491 to log/8/server/ftp_sockdata.pid 11:15:50.692952 Received PING (on stdin) 11:15:50.693016 Received PORT (on stdin) 11:15:50.693262 ====> Client connect 11:15:50.693714 Received DATA (on stdin) 11:15:50.693723 > 17 bytes data, server => client 11:15:50.693751 'WE ROOLZ: 80127\r\n' 11:15:50.693816 Received DISC (on stdin) 11:15:50.693824 ====> Client forcibly disconnected 11:15:50.693922 Received QUIT (on stdin) 11:15:50.693931 quits 11:15:50.693963 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 104 === End of file server.cmd === Start of file valgrind104 ==80497== ==80497== Process terminating with default action of signal 4 (SIGILL) ==80497== Illegal opcode at address 0x10B06D ==80497== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80497== by 0x10B06D: main (tool_main.c:234) === End of file valgrind104 startnew: perl -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 35103 (log/6/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.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/2/valgrind106 ../src/curl -q --output log/2/curl106.out --include --trace-ascii log/2/trace106 --trace-time "ftp://127.0.0.1:38659//path%20with%20%20spaces//and%20things2/106;type=A" > log/2/stdout106 2> log/2/stderr106 .0.1:35103/verifiedserver" 2>log/6/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80128 port 35103 * pid ftp => 80128 80128 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/6/valgrind105 ../src/curl -q --output log/6/curl105.out --include --trace-ascii log/6/trace105 --trace-time ftp://userdude:passfellow@127.0.0.1:35103/105 --use-ascii > log/6/stdout105 2> log/6/stderr105 105: 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 105 === Start of file ftp_server.log 11:15:49.196279 FTP server listens on port IPv4/35103 11:15:49.196339 logged pid 80128 in log/6/server/ftp_server.pid 11:15:49.196352 Awaiting input 11:15:50.179601 ====> Client connect 11:15:50.179700 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.179880 < "USER anonymous" 11:15:50.179902 > "331 We are happy you popped in![CR][LF]" 11:15:50.179995 < "PASS ftp@example.com" 11:15:50.180009 > "230 Welcome you silly person[CR][LF]" 11:15:50.180090 < "PWD" 11:15:50.180112 > "257 "/" is current directory[CR][LF]" 11:15:50.180196 < "EPSV" 11:15:50.180211 ====> Passive DATA channel requested by client 11:15:50.180219 DATA sockfilt for passive data channel starting... 11:15:50.181339 DATA sockfilt for passive data channel started (pid 80493) 11:15:50.181436 DATA sockfilt for passive data channel listens on port 39941 11:15:50.181468 > "229 Entering Passive Mode (|||39941|)[LF]" 11:15:50.181480 Client has been notified that DATA conn will be accepted on port 39941 11:15:50.181639 Client connects to port 39941 11:15:50.181661 ====> Client established passive DATA connection on port 39941 11:15:50.181733 < "TYPE I" 11:15:50.181752 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.181856 < "SIZE verifiedserver" 11:15:50.181881 > "213 17[CR][LF]" 11:15:50.181983 < "RETR verifiedserver" 11:15:50.182004 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.182058 =====> Closing passive DATA connection... 11:15:50.182069 Server disconnects passive DATA connection 11:15:50.182221 Server disconnected passive DATA connection 11:15:50.182241 DATA sockfilt for passive data channel quits (pid 80493) 11:15:50.182362 DATA sockfilt for passive data channel quit (pid 80493) 11:15:50.182375 =====> Closed passive DATA connection 11:15:50.182391 > "226 File transfer complete[CR][LF]" 11:15:50.225721 < "QUIT" 11:15:50.225767 > "221 bye bye baby[CR][LF]" 11:15:50.226387 MAIN sockfilt said DISC 11:15:50.226404 ====> Client disconnected 11:15:50.226433 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.713370 Running IPv4 version 11:15:49.713423 Listening on port 35103 11:15:49.713444 Wrote pid 80131 to log/6/server/ftp_sockctrl.pid 11:15:49.713461 Wrote port 35103 to log/6/server/ftp_server.port 11:15:49.713547 Received PING (on stdin) 11:15:50.696869 ====> Client connect 11:15:50.697026 Received DATA (on stdin) 11:15:50.697034 > 160 bytes data, server => client 11:15:50.697040 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.697046 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.697052 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.697097 < 16 bytes data, client => server 11:15:50.697103 'USER anonymous\r\n' 11:15:50.697224 Received DATA (on stdin) 11:15:50.697230 > 33 bytes data, server => client 11:15:50.697236 '331 We are happy you popped in!\r\n' 11:15:50.697269 < 22 bytes data, client => server 11:15:50.697275 'PASS ftp@example.com\r\n' 11:15:50.697330 Received DATA (on stdin) 11:15:50.697336 > 30 bytes data, server => client 11:15:50.697341 '230 Welcome you silly person\r\n' 11:15:50.697368 < 5 bytes data, client => server 11:15:50.697374 'PWD\r\n' 11:15:50.697430 Received DATA (on stdin) 11:15:50.697436 > 30 bytes data, server => client 11:15:50.697442 '257 "/" is current directory\r\n' 11:15:50.697474 < 6 bytes data, client => server 11:15:50.697479 'EPSV\r\n' 11:15:50.698808 Received DATA (on stdin) 11:15:50.698820 > 38 bytes data, server => client 11:15:50.698830 '229 Entering Passive Mode (|||39941|)\n' 11:15:50.698992 < 8 bytes data, client => server 11:15:50.699001 'TYPE I\r\n' 11:15:50.699073 Received DATA (on stdin) 11:15:50.699081 > 33 bytes data, server => client 11:15:50.699088 '200 I modify TYPE as you wanted\r\n' 11:15:50.699126 < 21 bytes data, client => server 11:15:50.699133 'SIZE verifiedserver\r\n' 11:15:50.699205 Received DATA (on stdin) 11:15:50.699213 > 8 bytes data, server => client 11:15:50.699219 '213 17\r\n' 11:15:50.699253 < 21 bytes data, client => server 11:15:50.699259 'RETR verifiedserver\r\n' 11:15:50.699460 Received DATA (on stdin) 11:15:50.699468 > 29 bytes data, server => client 11:15:50.699474 '150 Binary junk (17 bytes).\r\n' 11:15:50.699712 Received DATA (on stdin) 11:15:50.699720 > 28 bytes data, server => client 11:15:50.699726 '226 File transfer complete\r\n' 11:15:50.742900 < 6 bytes data, client => server 11:15:50.742925 'QUIT\r\n' 11:15:50.743097 Received DATA (on stdin) 11:15:50.743106 > 18 bytes data, server => client 11:15:50.743115 '221 bye bye baby\r\n' 11:15:50.743676 ====> Client disconnect 11:15:50.743755 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.698517 Running IPv4 version 11:15:50.698570 Listening on port 39941 11:15:50.698599 Wrote pid 80493 to log/6/server/ftp_sockdata.pid 11:15:50.698614 Received PING (on stdin) 11:15:50.698690 Received PORT (on stdin) 11:15:50.698925 ====> Client connect 11:15:50.699405 Received DATA (on stdin) 11:15:50.699413 > 17 bytes data, server => client 11:15:50.699419 'WE ROOLZ: 80128\r\n' 11:15:50.699438 Received DISC (on stdin) 11:15:50.699444 ====> Client forcibly disconnected 11:15:50.699566 Received QUIT (on stdin) 11:15:50.699573 quits 11:15:50.699595 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 105 === End of file server.cmd === Start of file valgrind105 ==80512== ==80512== Process terminating with default action of signal 4 (SIGILL) ==80512== Illegal opcode at address 0x10B06D ==80512== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80512== by 0x10B06D: main (tool_main.c:234) === End of file valgrind105 startnew: perl -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 38659 (log/2/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:38659/verifiedserver" 2>log/2/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80133 port 38659 * pid ftp => 80133 80133 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/2/valgrind106 ../src/curl -q --output log/2/curl106.out --include --trace-ascii log/2/trace106 --trace-time "ftp://127.0.0.1:38659//path%20with%20%20spaces//and%20things2/106;type=A" > log/2/stdout106 2> log/2/stderr106 106: 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 106 === Start of file ftp_server.log 11:15:49.352513 FTP server listens on port IPv4/38659 11:15:49.352576 logged pid 80133 in 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/1/valgrind113 ../src/curl -q --output log/1/curl113.out --include --trace-ascii log/1/trace113 --trace-time ftp://127.0.0.1:35701/113 > log/1/stdout113 2> log/1/stderr113 CMD (33792): ../libtool --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/valgrind109 ../src/curl -q --output log/3/curl109.out --include --trace-ascii log/3/trace109 --trace-time ftp://127.0.0.1:45493/109 -T log/3/upload109 --append > log/3/stdout109 2> log/3/stderr109 2/server/ftp_server.pid 11:15:49.352592 Awaiting input 11:15:50.346695 ====> Client connect 11:15:50.346842 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.347066 < "USER anonymous" 11:15:50.347092 > "331 We are happy you popped in![CR][LF]" 11:15:50.347205 < "PASS ftp@example.com" 11:15:50.347222 > "230 Welcome you silly person[CR][LF]" 11:15:50.347322 < "PWD" 11:15:50.347341 > "257 "/" is current directory[CR][LF]" 11:15:50.347450 < "EPSV" 11:15:50.347470 ====> Passive DATA channel requested by client 11:15:50.347479 DATA sockfilt for passive data channel starting... 11:15:50.348618 DATA sockfilt for passive data channel started (pid 80610) 11:15:50.348697 DATA sockfilt for passive data channel listens on port 45939 11:15:50.348724 > "229 Entering Passive Mode (|||45939|)[LF]" 11:15:50.348734 Client has been notified that DATA conn will be accepted on port 45939 11:15:50.348948 Client connects to port 45939 11:15:50.348972 ====> Client established passive DATA connection on port 45939 11:15:50.349018 < "TYPE I" 11:15:50.349038 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.349148 < "SIZE verifiedserver" 11:15:50.349170 > "213 17[CR][LF]" 11:15:50.349270 < "RETR verifiedserver" 11:15:50.349290 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.349345 =====> Closing passive DATA connection... 11:15:50.349358 Server disconnects passive DATA connection 11:15:50.349443 Server disconnected passive DATA connection 11:15:50.349461 DATA sockfilt for passive data channel quits (pid 80610) 11:15:50.349804 DATA sockfilt for passive data channel quit (pid 80610) 11:15:50.349819 =====> Closed passive DATA connection 11:15:50.349839 > "226 File transfer complete[CR][LF]" 11:15:50.399004 < "QUIT" 11:15:50.399053 > "221 bye bye baby[CR][LF]" 11:15:50.399916 MAIN sockfilt said DISC 11:15:50.399938 ====> Client disconnected 11:15:50.399987 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.869587 Running IPv4 version 11:15:49.869681 Listening on port 38659 11:15:49.869712 Wrote pid 80134 to log/2/server/ftp_sockctrl.pid 11:15:49.869737 Wrote port 38659 to log/2/server/ftp_server.port 11:15:49.869753 Received PING (on stdin) 11:15:50.863946 ====> Client connect 11:15:50.864172 Received DATA (on stdin) 11:15:50.864182 > 160 bytes data, server => client 11:15:50.864190 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.864198 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.864205 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.864264 < 16 bytes data, client => server 11:15:50.864272 'USER anonymous\r\n' 11:15:50.864417 Received DATA (on stdin) 11:15:50.864425 > 33 bytes data, server => client 11:15:50.864433 '331 We are happy you popped in!\r\n' 11:15:50.864471 < 22 bytes data, client => server 11:15:50.864479 'PASS ftp@example.com\r\n' 11:15:50.864545 Received DATA (on stdin) 11:15:50.864552 > 30 bytes data, server => client 11:15:50.864559 '230 Welcome you silly person\r\n' 11:15:50.864593 < 5 bytes data, client => server 11:15:50.864600 'PWD\r\n' 11:15:50.864662 Received DATA (on stdin) 11:15:50.864669 > 30 bytes data, server => client 11:15:50.864676 '257 "/" is current directory\r\n' 11:15:50.864718 < 6 bytes data, client => server 11:15:50.864725 'EPSV\r\n' 11:15:50.866072 Received DATA (on stdin) 11:15:50.866101 > 38 bytes data, server => client 11:15:50.866110 '229 Entering Passive Mode (|||45939|)\n' 11:15:50.866211 < 8 bytes data, client => server 11:15:50.866220 'TYPE I\r\n' 11:15:50.866361 Received DATA (on stdin) 11:15:50.866369 > 33 bytes data, server => client 11:15:50.866377 '200 I modify TYPE as you wanted\r\n' 11:15:50.866415 < 21 bytes data, client => server 11:15:50.866423 'SIZE verifiedserver\r\n' 11:15:50.866494 Received DATA (on stdin) 11:15:50.866501 > 8 bytes data, server => client 11:15:50.866507 '213 17\r\n' 11:15:50.866542 < 21 bytes data, client => server 11:15:50.866549 'RETR verifiedserver\r\n' 11:15:50.866670 Received DATA (on stdin) 11:15:50.866684 > 29 bytes data, server => client 11:15:50.866692 '150 Binary junk (17 bytes).\r\n' 11:15:50.867162 Received DATA (on stdin) 11:15:50.867172 > 28 bytes data, server => client 11:15:50.867179 '226 File transfer complete\r\n' 11:15:50.916151 < 6 bytes data, client => server 11:15:50.916187 'QUIT\r\n' 11:15:50.916381 Received DATA (on stdin) 11:15:50.916390 > 18 bytes data, server => client 11:15:50.916397 '221 bye bye baby\r\n' 11:15:50.917197 ====> Client disconnect 11:15:50.917309 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.865809 Running IPv4 version 11:15:50.865861 Listening on port 45939 11:15:50.865886 Wrote pid 80610 to log/2/server/ftp_sockdata.pid 11:15:50.865899 Received PING (on stdin) 11:15:50.865961 Received PORT (on stdin) 11:15:50.866234 ====> Client connect 11:15:50.866683 Received DATA (on stdin) 11:15:50.866693 > 17 bytes data, server => client 11:15:50.866700 'WE ROOLZ: 80133\r\n' 11:15:50.866721 Received DISC (on stdin) 11:15:50.866730 ====> Client forcibly disconnected 11:15:50.866788 Received QUIT (on stdin) 11:15:50.866795 quits 11:15:50.866826 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 106 === End of file server.cmd === Start of file valgrind106 ==80612== ==80612== Process terminating with default action of signal 4 (SIGILL) ==80612== Illegal opcode at address 0x10B06D ==80612== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80612== by 0x10B06D: main (tool_main.c:234) === End of file valgrind106 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/1/valgrind113 ../src/curl -q --output log/1/curl113.out --include --trace-ascii log/1/trace113 --trace-time ftp://127.0.0.1:35701/113 > log/1/stdout113 2> log/1/stderr113 113: 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 113 === Start of file server.cmd REPLY USER 314 bluah you fewl Testnum 113 === End of file server.cmd === Start of file valgrind113 ==80709== ==80709== Process terminating with default action of signal 4 (SIGILL) ==80709== Illegal opcode at address 0x10B06D ==80709== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80709== by 0x10B06D: main (tool_main.c:234) === End of file valgrind113 startnew: perl -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 45493 (log/3/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:45493/verifiedserver" 2>log/3/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80137 port 45493 * pid ftp => 80137 80137 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/3/valgrind109 ../src/curl -q --output log/3/curl109.out --include --trace-ascii log/3/trace109 --trace-time ftp://127.0.0.1:45493/109 -T log/3/upload109 --append > log/3/stdout109 2> log/3/stderr109 109: 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 109 === Start of file ftp_server.log 11:15:49.499631 FTP server listens on port IPv4/45493 11:15:49.499723 logged pid 80137 in log/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/5/valgrind107 ../src/curl -q --output log/5/curl107.out --include --trace-ascii log/5/trace107 --trace-time ftp://127.0.0.1:35155/107 -T log/5/test107.txt > log/5/stdout107 2> log/5/stderr107 CMD (33792): ../libtool --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/valgrind114 ../src/curl -q --output log/4/curl114.out --include --trace-ascii log/4/trace114 --trace-time ftp://127.0.0.1:36137/114 > log/4/stdout114 2> log/4/stderr114 /server/ftp_server.pid 11:15:49.499746 Awaiting input 11:15:50.491555 ====> Client connect 11:15:50.491673 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.491872 < "USER anonymous" 11:15:50.491896 > "331 We are happy you popped in![CR][LF]" 11:15:50.491995 < "PASS ftp@example.com" 11:15:50.492009 > "230 Welcome you silly person[CR][LF]" 11:15:50.492110 < "PWD" 11:15:50.492131 > "257 "/" is current directory[CR][LF]" 11:15:50.492233 < "EPSV" 11:15:50.492250 ====> Passive DATA channel requested by client 11:15:50.492258 DATA sockfilt for passive data channel starting... 11:15:50.493202 DATA sockfilt for passive data channel started (pid 80705) 11:15:50.493274 DATA sockfilt for passive data channel listens on port 41427 11:15:50.493301 > "229 Entering Passive Mode (|||41427|)[LF]" 11:15:50.493311 Client has been notified that DATA conn will be accepted on port 41427 11:15:50.493470 Client connects to port 41427 11:15:50.493489 ====> Client established passive DATA connection on port 41427 11:15:50.493528 < "TYPE I" 11:15:50.493544 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.493632 < "SIZE verifiedserver" 11:15:50.493652 > "213 17[CR][LF]" 11:15:50.493732 < "RETR verifiedserver" 11:15:50.493749 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.493796 =====> Closing passive DATA connection... 11:15:50.493805 Server disconnects passive DATA connection 11:15:50.493912 Server disconnected passive DATA connection 11:15:50.493930 DATA sockfilt for passive data channel quits (pid 80705) 11:15:50.494120 DATA sockfilt for passive data channel quit (pid 80705) 11:15:50.494144 =====> Closed passive DATA connection 11:15:50.494172 > "226 File transfer complete[CR][LF]" 11:15:50.538966 < "QUIT" 11:15:50.539010 > "221 bye bye baby[CR][LF]" 11:15:50.539683 MAIN sockfilt said DISC 11:15:50.539707 ====> Client disconnected 11:15:50.539747 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.016699 Running IPv4 version 11:15:49.016767 Listening on port 45493 11:15:49.016800 Wrote pid 80140 to log/3/server/ftp_sockctrl.pid 11:15:49.016824 Wrote port 45493 to log/3/server/ftp_server.port 11:15:49.016869 Received PING (on stdin) 11:15:50.008820 ====> Client connect 11:15:50.008991 Received DATA (on stdin) 11:15:50.009003 > 160 bytes data, server => client 11:15:50.009012 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.009021 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.009029 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.009087 < 16 bytes data, client => server 11:15:50.009095 'USER anonymous\r\n' 11:15:50.009218 Received DATA (on stdin) 11:15:50.009225 > 33 bytes data, server => client 11:15:50.009231 '331 We are happy you popped in!\r\n' 11:15:50.009265 < 22 bytes data, client => server 11:15:50.009271 'PASS ftp@example.com\r\n' 11:15:50.009330 Received DATA (on stdin) 11:15:50.009336 > 30 bytes data, server => client 11:15:50.009342 '230 Welcome you silly person\r\n' 11:15:50.009371 < 5 bytes data, client => server 11:15:50.009376 'PWD\r\n' 11:15:50.009452 Received DATA (on stdin) 11:15:50.009460 > 30 bytes data, server => client 11:15:50.009465 '257 "/" is current directory\r\n' 11:15:50.009505 < 6 bytes data, client => server 11:15:50.009511 'EPSV\r\n' 11:15:50.010638 Received DATA (on stdin) 11:15:50.010648 > 38 bytes data, server => client 11:15:50.010656 '229 Entering Passive Mode (|||41427|)\n' 11:15:50.010742 < 8 bytes data, client => server 11:15:50.010752 'TYPE I\r\n' 11:15:50.010865 Received DATA (on stdin) 11:15:50.010871 > 33 bytes data, server => client 11:15:50.010877 '200 I modify TYPE as you wanted\r\n' 11:15:50.010908 < 21 bytes data, client => server 11:15:50.010914 'SIZE verifiedserver\r\n' 11:15:50.010972 Received DATA (on stdin) 11:15:50.010978 > 8 bytes data, server => client 11:15:50.010983 '213 17\r\n' 11:15:50.011011 < 21 bytes data, client => server 11:15:50.011017 'RETR verifiedserver\r\n' 11:15:50.011107 Received DATA (on stdin) 11:15:50.011122 > 29 bytes data, server => client 11:15:50.011131 '150 Binary junk (17 bytes).\r\n' 11:15:50.011502 Received DATA (on stdin) 11:15:50.011512 > 28 bytes data, server => client 11:15:50.011520 '226 File transfer complete\r\n' 11:15:50.056167 < 6 bytes data, client => server 11:15:50.056342 'QUIT\r\n' 11:15:50.056353 Received DATA (on stdin) 11:15:50.056361 > 18 bytes data, server => client 11:15:50.056368 '221 bye bye baby\r\n' 11:15:50.056966 ====> Client disconnect 11:15:50.057071 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.010416 Running IPv4 version 11:15:50.010457 Listening on port 41427 11:15:50.010477 Wrote pid 80705 to log/3/server/ftp_sockdata.pid 11:15:50.010487 Received PING (on stdin) 11:15:50.010542 Received PORT (on stdin) 11:15:50.010763 ====> Client connect 11:15:50.011127 Received DATA (on stdin) 11:15:50.011135 > 17 bytes data, server => client 11:15:50.011141 'WE ROOLZ: 80137\r\n' 11:15:50.011158 Received DISC (on stdin) 11:15:50.011165 ====> Client forcibly disconnected 11:15:50.011255 Received QUIT (on stdin) 11:15:50.011262 quits 11:15:50.011288 ============> sockfilt quits === End of file ftp_sockdata.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 ==80777== ==80777== Process terminating with default action of signal 4 (SIGILL) ==80777== Illegal opcode at address 0x10B06D ==80777== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80777== by 0x10B06D: main (tool_main.c:234) === End of file valgrind109 startnew: perl -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 35155 (log/5/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:35155/verifiedserver" 2>log/5/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80135 port 35155 * pid ftp => 80135 80135 test 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/5/valgrind107 ../src/curl -q --output log/5/curl107.out --include --trace-ascii log/5/trace107 --trace-time ftp://127.0.0.1:35155/107 -T log/5/test107.txt > log/5/stdout107 2> log/5/stderr107 107: 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 107 === Start of file ftp_server.log 11:15:49.490445 FTP server listens on port IPv4/35155 11:15:49.490504 logged pid 80135 in log/5/server/ftp_server.pid 11:15:49.490518 Awaiting input 11:15:50.484541 ====> Client connect 11:15:50.484641 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.484817 < "USER anonymous" 11:15:50.484838 > "331 We are happy you popped in![CR][LF]" 11:15:50.484932 < "PASS ftp@example.com" 11:15:50.484945 > "230 Welcome you silly person[CR][LF]" 11:15:50.485027 < "PWD" 11:15:50.485044 > "257 "/" is current directory[CR][LF]" 11:15:50.485128 < "EPSV" 11:15:50.485144 ====> Passive DATA channel requested by client 11:15:50.485151 DATA sockfilt for passive data channel starting... 11:15:50.486052 DATA sockfilt for passive data channel started (pid 80700) 11:15:50.486117 DATA sockfilt for passive data channel listens on port 43221 11:15:50.486140 > "229 EntCMD (33792): ../libtool --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/valgrind115 ../src/curl -q --output log/12/curl115.out --include --trace-ascii log/12/trace115 --trace-time ftp://127.0.0.1:41005/115 > log/12/stdout115 2> log/12/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/10/valgrind108 ../src/curl -q --output log/10/curl108.out --include --trace-ascii log/10/trace108 --trace-time ftp://127.0.0.1:33661/CWD/STOR/RETR/108 -T log/10/upload108 -P - > log/10/stdout108 2> log/10/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/7/valgrind112 ../src/curl -q --output log/7/curl112.out --include --trace-ascii log/7/trace112 --trace-time ftp://127.0.0.1:45903/112 -T log/7/upload112 -C 40 > log/7/stdout112 2> log/7/stderr112 ering Passive Mode (|||43221|)[LF]" 11:15:50.486149 Client has been notified that DATA conn will be accepted on port 43221 11:15:50.486292 Client connects to port 43221 11:15:50.486310 ====> Client established passive DATA connection on port 43221 11:15:50.486349 < "TYPE I" 11:15:50.486365 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.486451 < "SIZE verifiedserver" 11:15:50.486472 > "213 17[CR][LF]" 11:15:50.486551 < "RETR verifiedserver" 11:15:50.486568 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.486613 =====> Closing passive DATA connection... 11:15:50.486623 Server disconnects passive DATA connection 11:15:50.486690 Server disconnected passive DATA connection 11:15:50.486707 DATA sockfilt for passive data channel quits (pid 80700) 11:15:50.486822 DATA sockfilt for passive data channel quit (pid 80700) 11:15:50.486834 =====> Closed passive DATA connection 11:15:50.486849 > "226 File transfer complete[CR][LF]" 11:15:50.533753 < "QUIT" 11:15:50.533799 > "221 bye bye baby[CR][LF]" 11:15:50.534298 MAIN sockfilt said DISC 11:15:50.534330 ====> Client disconnected 11:15:50.534369 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.007579 Running IPv4 version 11:15:49.007657 Listening on port 35155 11:15:49.007679 Wrote pid 80139 to log/5/server/ftp_sockctrl.pid 11:15:49.007696 Wrote port 35155 to log/5/server/ftp_server.port 11:15:49.007707 Received PING (on stdin) 11:15:50.001808 ====> Client connect 11:15:50.001966 Received DATA (on stdin) 11:15:50.001973 > 160 bytes data, server => client 11:15:50.001980 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.001986 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.001992 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.002042 < 16 bytes data, client => server 11:15:50.002048 'USER anonymous\r\n' 11:15:50.002159 Received DATA (on stdin) 11:15:50.002166 > 33 bytes data, server => client 11:15:50.002172 '331 We are happy you popped in!\r\n' 11:15:50.002205 < 22 bytes data, client => server 11:15:50.002211 'PASS ftp@example.com\r\n' 11:15:50.002265 Received DATA (on stdin) 11:15:50.002271 > 30 bytes data, server => client 11:15:50.002277 '230 Welcome you silly person\r\n' 11:15:50.002304 < 5 bytes data, client => server 11:15:50.002310 'PWD\r\n' 11:15:50.002362 Received DATA (on stdin) 11:15:50.002368 > 30 bytes data, server => client 11:15:50.002374 '257 "/" is current directory\r\n' 11:15:50.002406 < 6 bytes data, client => server 11:15:50.002411 'EPSV\r\n' 11:15:50.003473 Received DATA (on stdin) 11:15:50.003482 > 38 bytes data, server => client 11:15:50.003488 '229 Entering Passive Mode (|||43221|)\n' 11:15:50.003567 < 8 bytes data, client => server 11:15:50.003575 'TYPE I\r\n' 11:15:50.003685 Received DATA (on stdin) 11:15:50.003691 > 33 bytes data, server => client 11:15:50.003697 '200 I modify TYPE as you wanted\r\n' 11:15:50.003727 < 21 bytes data, client => server 11:15:50.003733 'SIZE verifiedserver\r\n' 11:15:50.003791 Received DATA (on stdin) 11:15:50.003797 > 8 bytes data, server => client 11:15:50.003803 '213 17\r\n' 11:15:50.003830 < 21 bytes data, client => server 11:15:50.003835 'RETR verifiedserver\r\n' 11:15:50.003932 Received DATA (on stdin) 11:15:50.003944 > 29 bytes data, server => client 11:15:50.003951 '150 Binary junk (17 bytes).\r\n' 11:15:50.004170 Received DATA (on stdin) 11:15:50.004178 > 28 bytes data, server => client 11:15:50.004184 '226 File transfer complete\r\n' 11:15:50.050939 < 6 bytes data, client => server 11:15:50.050960 'QUIT\r\n' 11:15:50.051129 Received DATA (on stdin) 11:15:50.051138 > 18 bytes data, server => client 11:15:50.051145 '221 bye bye baby\r\n' 11:15:50.051421 ====> Client disconnect 11:15:50.052968 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.003259 Running IPv4 version 11:15:50.003303 Listening on port 43221 11:15:50.003325 Wrote pid 80700 to log/5/server/ftp_sockdata.pid 11:15:50.003336 Received PING (on stdin) 11:15:50.003389 Received PORT (on stdin) 11:15:50.003586 ====> Client connect 11:15:50.003944 Received DATA (on stdin) 11:15:50.003951 > 17 bytes data, server => client 11:15:50.003957 'WE ROOLZ: 80135\r\n' 11:15:50.003975 Received DISC (on stdin) 11:15:50.003981 ====> Client forcibly disconnected 11:15:50.004034 Received QUIT (on stdin) 11:15:50.004042 quits 11:15:50.004065 ============> sockfilt quits === End of file ftp_sockdata.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 ==80754== ==80754== Process terminating with default action of signal 4 (SIGILL) ==80754== Illegal opcode at address 0x10B06D ==80754== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80754== by 0x10B06D: main (tool_main.c:234) === End of file valgrind107 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/4/valgrind114 ../src/curl -q --output log/4/curl114.out --include --trace-ascii log/4/trace114 --trace-time ftp://127.0.0.1:36137/114 > log/4/stdout114 2> log/4/stderr114 114: 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 114 === Start of file server.cmd REPLY PASS 314 bluah you f00l Testnum 114 === End of file server.cmd === Start of file valgrind114 ==80723== ==80723== Process terminating with default action of signal 4 (SIGILL) ==80723== Illegal opcode at address 0x10B06D ==80723== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80723== by 0x10B06D: main (tool_main.c:234) === End of file valgrind114 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/12/valgrind115 ../src/curl -q --output log/12/curl115.out --include --trace-ascii log/12/trace115 --trace-time ftp://127.0.0.1:41005/115 > log/12/stdout115 2> log/12/stderr115 115: 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 115 === 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 ==80740== ==80740== Process terminating with default action of signal 4 (SIGILL) ==80740== Illegal opcode at address 0x10B06D ==80740== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80740== by 0x10B06D: 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/7/valgrind112 ../src/curl -q --output log/7/curl112.out --include --trace-ascii log/7/trace112 --trace-time ftp://127.0.0.1:45903/112 -T log/7/upload112 -C 40 > log/7/stdout112 2> log/7/stderr112 112: 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 112 === 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 ==80710== ==80710== Process terminating with default action of signal 4 (SIGILL) ==80710== Illegal opcode at address 0x10B06D ==80710== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80710== by 0x10B06D: main (tool_main.c:234) === End of file valgrind112 startnew: perl -I/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/9/valgrind110 ../src/curl -q --output log/9/curl110.out --include --trace-ascii log/9/trace110 --trace-time ftp://127.0.0.1:39811/110 -C 20 > log/9/stdout110 2> log/9/stderr110 dir/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 33661 (log/10/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:33661/verifiedserver" 2>log/10/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80136 port 33661 * pid ftp => 80136 80136 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/10/valgrind108 ../src/curl -q --output log/10/curl108.out --include --trace-ascii log/10/trace108 --trace-time ftp://127.0.0.1:33661/CWD/STOR/RETR/108 -T log/10/upload108 -P - > log/10/stdout108 2> log/10/stderr108 108: 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 108 === Start of file ftp_server.log 11:15:49.490443 FTP server listens on port IPv4/33661 11:15:49.490498 logged pid 80136 in log/10/server/ftp_server.pid 11:15:49.490514 Awaiting input 11:15:50.484217 ====> Client connect 11:15:50.484334 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.484518 < "USER anonymous" 11:15:50.484540 > "331 We are happy you popped in![CR][LF]" 11:15:50.484635 < "PASS ftp@example.com" 11:15:50.484650 > "230 Welcome you silly person[CR][LF]" 11:15:50.484735 < "PWD" 11:15:50.484751 > "257 "/" is current directory[CR][LF]" 11:15:50.484838 < "EPSV" 11:15:50.484853 ====> Passive DATA channel requested by client 11:15:50.484860 DATA sockfilt for passive data channel starting... 11:15:50.485827 DATA sockfilt for passive data channel started (pid 80699) 11:15:50.485894 DATA sockfilt for passive data channel listens on port 39895 11:15:50.485917 > "229 Entering Passive Mode (|||39895|)[LF]" 11:15:50.485926 Client has been notified that DATA conn will be accepted on port 39895 11:15:50.486073 Client connects to port 39895 11:15:50.486089 ====> Client established passive DATA connection on port 39895 11:15:50.486129 < "TYPE I" 11:15:50.486144 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.486232 < "SIZE verifiedserver" 11:15:50.486256 > "213 17[CR][LF]" 11:15:50.486336 < "RETR verifiedserver" 11:15:50.486355 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.486400 =====> Closing passive DATA connection... 11:15:50.486408 Server disconnects passive DATA connection 11:15:50.486538 Server disconnected passive DATA connection 11:15:50.486556 DATA sockfilt for passive data channel quits (pid 80699) 11:15:50.486668 DATA sockfilt for passive data channel quit (pid 80699) 11:15:50.486680 =====> Closed passive DATA connection 11:15:50.486695 > "226 File transfer complete[CR][LF]" 11:15:50.532403 < "QUIT" 11:15:50.532446 > "221 bye bye baby[CR][LF]" 11:15:50.533190 MAIN sockfilt said DISC 11:15:50.533213 ====> Client disconnected 11:15:50.533252 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.007579 Running IPv4 version 11:15:49.007657 Listening on port 33661 11:15:49.007678 Wrote pid 80138 to log/10/server/ftp_sockctrl.pid 11:15:49.007694 Wrote port 33661 to log/10/server/ftp_server.port 11:15:49.007705 Received PING (on stdin) 11:15:50.001478 ====> Client connect 11:15:50.001660 Received DATA (on stdin) 11:15:50.001668 > 160 bytes data, server => client 11:15:50.001675 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.001681 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.001687 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.001735 < 16 bytes data, client => server 11:15:50.001741 'USER anonymous\r\n' 11:15:50.001863 Received DATA (on stdin) 11:15:50.001870 > 33 bytes data, server => client 11:15:50.001876 '331 We are happy you popped in!\r\n' 11:15:50.001908 < 22 bytes data, client => server 11:15:50.001914 'PASS ftp@example.com\r\n' 11:15:50.001970 Received DATA (on stdin) 11:15:50.001976 > 30 bytes data, server => client 11:15:50.001982 '230 Welcome you silly person\r\n' 11:15:50.002013 < 5 bytes data, client => server 11:15:50.002019 'PWD\r\n' 11:15:50.002069 Received DATA (on stdin) 11:15:50.002075 > 30 bytes data, server => client 11:15:50.002081 '257 "/" is current directory\r\n' 11:15:50.002114 < 6 bytes data, client => server 11:15:50.002120 'EPSV\r\n' 11:15:50.003252 Received DATA (on stdin) 11:15:50.003261 > 38 bytes data, server => client 11:15:50.003267 '229 Entering Passive Mode (|||39895|)\n' 11:15:50.003348 < 8 bytes data, client => server 11:15:50.003356 'TYPE I\r\n' 11:15:50.003465 Received DATA (on stdin) 11:15:50.003471 > 33 bytes data, server => client 11:15:50.003477 '200 I modify TYPE as you wanted\r\n' 11:15:50.003508 < 21 bytes data, client => server 11:15:50.003514 'SIZE verifiedserver\r\n' 11:15:50.003576 Received DATA (on stdin) 11:15:50.003582 > 8 bytes data, server => client 11:15:50.003587 '213 17\r\n' 11:15:50.003614 < 21 bytes data, client => server 11:15:50.003620 'RETR verifiedserver\r\n' 11:15:50.003780 Received DATA (on stdin) 11:15:50.003787 > 29 bytes data, server => client 11:15:50.003792 '150 Binary junk (17 bytes).\r\n' 11:15:50.004015 Received DATA (on stdin) 11:15:50.004023 > 28 bytes data, server => client 11:15:50.004029 '226 File transfer complete\r\n' 11:15:50.049589 < 6 bytes data, client => server 11:15:50.049616 'QUIT\r\n' 11:15:50.049774 Received DATA (on stdin) 11:15:50.049783 > 18 bytes data, server => client 11:15:50.049791 '221 bye bye baby\r\n' 11:15:50.050465 ====> Client disconnect 11:15:50.050574 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.003038 Running IPv4 version 11:15:50.003079 Listening on port 39895 11:15:50.003102 Wrote pid 80699 to log/10/server/ftp_sockdata.pid 11:15:50.003113 Received PING (on stdin) 11:15:50.003164 Received PORT (on stdin) 11:15:50.003367 ====> Client connect 11:15:50.003728 Received DATA (on stdin) 11:15:50.003736 > 17 bytes data, server => client 11:15:50.003741 'WE ROOLZ: 80136\r\n' 11:15:50.003759 Received DISC (on stdin) 11:15:50.003765 ====> Client forcibly disconnected 11:15:50.003881 Received QUIT (on stdin) 11:15:50.003887 quits 11:15:50.003913 ============> sockfilt quits === End of file ftp_sockdata.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 ==80746== ==80746== Process terminating with default action of signal 4 (SIGILL) ==80746== Illegal opcode at address 0x10B06D ==80746== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==80746== by 0x10B06D: main (tool_main.c:234) === End of file valgrind108 startnew: perl -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 39811 (log/9/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:39811/verifiedserver" 2>log/9/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80141 port 39811 * pid ftp => 80141 80141 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 -CMD (33792): ../libtool --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/valgrind117 ../src/curl -q --output log/6/curl117.out --include --trace-ascii log/6/trace117 --trace-time ftp://127.0.0.1:35103/117 > log/6/stdout117 2> log/6/stderr117 CMD (33792): ../libtool --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/valgrind116 ../src/curl -q --output log/8/curl116.out --include --trace-ascii log/8/trace116 --trace-time ftp://127.0.0.1:43509/116 -P 1.2.3.4 > log/8/stdout116 2> log/8/stderr116 -trace-time ftp://127.0.0.1:39811/110 -C 20 > log/9/stdout110 2> log/9/stderr110 110: 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 110 === Start of file ftp_server.log 11:15:49.598280 FTP server listens on port IPv4/39811 11:15:49.598346 logged pid 80141 in log/9/server/ftp_server.pid 11:15:49.598363 Awaiting input 11:15:50.605044 ====> Client connect 11:15:50.605197 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:50.605488 < "USER anonymous" 11:15:50.605521 > "331 We are happy you popped in![CR][LF]" 11:15:50.605653 < "PASS ftp@example.com" 11:15:50.605672 > "230 Welcome you silly person[CR][LF]" 11:15:50.605782 < "PWD" 11:15:50.605805 > "257 "/" is current directory[CR][LF]" 11:15:50.605932 < "EPSV" 11:15:50.605955 ====> Passive DATA channel requested by client 11:15:50.605965 DATA sockfilt for passive data channel starting... 11:15:50.607293 DATA sockfilt for passive data channel started (pid 81068) 11:15:50.607375 DATA sockfilt for passive data channel listens on port 44949 11:15:50.607406 > "229 Entering Passive Mode (|||44949|)[LF]" 11:15:50.607419 Client has been notified that DATA conn will be accepted on port 44949 11:15:50.607617 Client connects to port 44949 11:15:50.607640 ====> Client established passive DATA connection on port 44949 11:15:50.607689 < "TYPE I" 11:15:50.607709 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:50.607820 < "SIZE verifiedserver" 11:15:50.607845 > "213 17[CR][LF]" 11:15:50.607948 < "RETR verifiedserver" 11:15:50.607969 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:50.608027 =====> Closing passive DATA connection... 11:15:50.608038 Server disconnects passive DATA connection 11:15:50.608221 Server disconnected passive DATA connection 11:15:50.608246 DATA sockfilt for passive data channel quits (pid 81068) 11:15:50.608417 DATA sockfilt for passive data channel quit (pid 81068) 11:15:50.608433 =====> Closed passive DATA connection 11:15:50.608452 > "226 File transfer complete[CR][LF]" 11:15:50.650799 < "QUIT" 11:15:50.650850 > "221 bye bye baby[CR][LF]" 11:15:50.651729 MAIN sockfilt said DISC 11:15:50.651753 ====> Client disconnected 11:15:50.651801 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:49.115404 Running IPv4 version 11:15:49.115476 Listening on port 39811 11:15:49.115504 Wrote pid 80142 to log/9/server/ftp_sockctrl.pid 11:15:49.115523 Wrote port 39811 to log/9/server/ftp_server.port 11:15:49.115535 Received PING (on stdin) 11:15:50.122291 ====> Client connect 11:15:50.122532 Received DATA (on stdin) 11:15:50.122543 > 160 bytes data, server => client 11:15:50.122553 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:50.122568 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:50.122575 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:50.122647 < 16 bytes data, client => server 11:15:50.122656 'USER anonymous\r\n' 11:15:50.122849 Received DATA (on stdin) 11:15:50.122859 > 33 bytes data, server => client 11:15:50.122867 '331 We are happy you popped in!\r\n' 11:15:50.122911 < 22 bytes data, client => server 11:15:50.122919 'PASS ftp@example.com\r\n' 11:15:50.122996 Received DATA (on stdin) 11:15:50.123004 > 30 bytes data, server => client 11:15:50.123011 '230 Welcome you silly person\r\n' 11:15:50.123049 < 5 bytes data, client => server 11:15:50.123056 'PWD\r\n' 11:15:50.123127 Received DATA (on stdin) 11:15:50.123135 > 30 bytes data, server => client 11:15:50.123143 '257 "/" is current directory\r\n' 11:15:50.123189 < 6 bytes data, client => server 11:15:50.123197 'EPSV\r\n' 11:15:50.124747 Received DATA (on stdin) 11:15:50.124757 > 38 bytes data, server => client 11:15:50.124765 '229 Entering Passive Mode (|||44949|)\n' 11:15:50.124883 < 8 bytes data, client => server 11:15:50.124894 'TYPE I\r\n' 11:15:50.125032 Received DATA (on stdin) 11:15:50.125041 > 33 bytes data, server => client 11:15:50.125049 '200 I modify TYPE as you wanted\r\n' 11:15:50.125088 < 21 bytes data, client => server 11:15:50.125096 'SIZE verifiedserver\r\n' 11:15:50.125167 Received DATA (on stdin) 11:15:50.125175 > 8 bytes data, server => client 11:15:50.125182 '213 17\r\n' 11:15:50.125215 < 21 bytes data, client => server 11:15:50.125223 'RETR verifiedserver\r\n' 11:15:50.125432 Received DATA (on stdin) 11:15:50.125441 > 29 bytes data, server => client 11:15:50.125449 '150 Binary junk (17 bytes).\r\n' 11:15:50.125777 Received DATA (on stdin) 11:15:50.125787 > 28 bytes data, server => client 11:15:50.125794 '226 File transfer complete\r\n' 11:15:50.167944 < 6 bytes data, client => server 11:15:50.167980 'QUIT\r\n' 11:15:50.168179 Received DATA (on stdin) 11:15:50.168188 > 18 bytes data, server => client 11:15:50.168196 '221 bye bye baby\r\n' 11:15:50.169009 ====> Client disconnect 11:15:50.169128 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:50.124476 Running IPv4 version 11:15:50.124531 Listening on port 44949 11:15:50.124560 Wrote pid 81068 to log/9/server/ftp_sockdata.pid 11:15:50.124573 Received PING (on stdin) 11:15:50.124636 Received PORT (on stdin) 11:15:50.124908 ====> Client connect 11:15:50.125364 Received DATA (on stdin) 11:15:50.125374 > 17 bytes data, server => client 11:15:50.125381 'WE ROOLZ: 80141\r\n' 11:15:50.125403 Received DISC (on stdin) 11:15:50.125412 ====> Client forcibly disconnected 11:15:50.125577 Received QUIT (on stdin) 11:15:50.125585 quits 11:15:50.125620 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 110 === End of file server.cmd === Start of file valgrind110 ==81070== ==81070== Process terminating with default action of signal 4 (SIGILL) ==81070== Illegal opcode at address 0x10B06D ==81070== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81070== by 0x10B06D: main (tool_main.c:234) === End of file valgrind110 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/6/valgrind117 ../src/curl -q --output log/6/curl117.out --include --trace-ascii log/6/trace117 --trace-time ftp://127.0.0.1:35103/117 > log/6/stdout117 2> log/6/stderr117 117: 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 117 === 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 ==81140== ==81140== Process terminating with default action of signal 4 (SIGILL) ==81140== Illegal opcode at address 0x10B06D ==81140== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81140== by 0x10B06D: main (tool_main.c:234) === End of file valgrind117 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/8/valgrind116 ../src/curl -q --output log/8/curl116.out --include --trace-ascii log/8/trace116 --trace-time ftp://127.0.0.1:43509/116 -P 1.2.3.4 > log/8/stdout116 2> log/8/stderr116 116: 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 116 === 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 ==81098== ==81098== Process terminating with default action of signal 4 (SIGILL) ==81098== Illegal opcode at addressCMD (33792): ../libtool --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-time ftp://127.0.0.1:38659/118 > log/2/stdout118 2> log/2/stderr118 CMD (33792): ../libtool --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/valgrind122 ../src/curl -q --output log/4/curl122.out --include --trace-ascii log/4/trace122 --trace-time ftp://127.0.0.1:36137/122 -C 5 > log/4/stdout122 2> log/4/stderr122 CMD (33792): ../libtool --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/valgrind120 ../src/curl -q --output log/3/curl120.out --include --trace-ascii log/3/trace120 --trace-time ftp://127.0.0.1:45493/120 -Q "-DELE file" > log/3/stdout120 2> log/3/stderr120 CMD (33792): ../libtool --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/valgrind123 ../src/curl -q --output log/12/curl123.out --include --trace-ascii log/12/trace123 --trace-time ftp://127.0.0.1:41005/123 -T log/12/upload123 -C 51 > log/12/stdout123 2> log/12/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/7/valgrind124 ../src/curl -q --output log/7/curl124.out --include --trace-ascii log/7/trace124 --trace-time ftp://127.0.0.1:45903/124 > log/7/stdout124 2> log/7/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/5/valgrind121 ../src/curl -q --output log/5/curl121.out --include --trace-ascii log/5/trace121 --trace-time ftp://127.0.0.1:35155/121 -Q "-DELE after_transfer" -Q "DELE before_transfer" > log/5/stdout121 2> log/5/stderr121 CMD (33792): ../libtool --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/valgrind119 ../src/curl -q --output log/1/curl119.out --include --trace-ascii log/1/trace119 --trace-time ftp://127.0.0.1:35701/119 -P - > log/1/stdout119 2> log/1/stderr119 CMD (33792): ../libtool --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/valgrind125 ../src/curl -q --output log/10/curl125.out --include --trace-ascii log/10/trace125 --trace-time ftp://127.0.0.1:33661/path/to/file/125 > log/10/stdout125 2> log/10/stderr125 0x10B06D ==81098== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81098== by 0x10B06D: main (tool_main.c:234) === End of file valgrind116 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-time ftp://127.0.0.1:38659/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 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 ==81223== ==81223== Process terminating with default action of signal 4 (SIGILL) ==81223== Illegal opcode at address 0x10B06D ==81223== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81223== by 0x10B06D: main (tool_main.c:234) === End of file valgrind118 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/4/valgrind122 ../src/curl -q --output log/4/curl122.out --include --trace-ascii log/4/trace122 --trace-time ftp://127.0.0.1:36137/122 -C 5 > log/4/stdout122 2> log/4/stderr122 122: 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 122 === Start of file server.cmd REPLY EPSV 500 no such command Testnum 122 === End of file server.cmd === Start of file valgrind122 ==81283== ==81283== Process terminating with default action of signal 4 (SIGILL) ==81283== Illegal opcode at address 0x10B06D ==81283== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81283== by 0x10B06D: main (tool_main.c:234) === End of file valgrind122 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/3/valgrind120 ../src/curl -q --output log/3/curl120.out --include --trace-ascii log/3/trace120 --trace-time ftp://127.0.0.1:45493/120 -Q "-DELE file" > log/3/stdout120 2> log/3/stderr120 120: 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 120 === Start of file server.cmd REPLY EPSV 314 bluah you f00l Testnum 120 === End of file server.cmd === Start of file valgrind120 ==81276== ==81276== Process terminating with default action of signal 4 (SIGILL) ==81276== Illegal opcode at address 0x10B06D ==81276== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81276== by 0x10B06D: main (tool_main.c:234) === End of file valgrind120 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/12/valgrind123 ../src/curl -q --output log/12/curl123.out --include --trace-ascii log/12/trace123 --trace-time ftp://127.0.0.1:41005/123 -T log/12/upload123 -C 51 > log/12/stdout123 2> log/12/stderr123 123: 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 123 === Start of file server.cmd Testnum 123 === End of file server.cmd === Start of file upload123 -------------------------------------------------- === End of file upload123 === Start of file valgrind123 ==81299== ==81299== Process terminating with default action of signal 4 (SIGILL) ==81299== Illegal opcode at address 0x10B06D ==81299== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81299== by 0x10B06D: main (tool_main.c:234) === End of file valgrind123 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/7/valgrind124 ../src/curl -q --output log/7/curl124.out --include --trace-ascii log/7/trace124 --trace-time ftp://127.0.0.1:45903/124 > log/7/stdout124 2> log/7/stderr124 124: 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 124 === 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 ==81288== ==81288== Process terminating with default action of signal 4 (SIGILL) ==81288== Illegal opcode at address 0x10B06D ==81288== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81288== by 0x10B06D: main (tool_main.c:234) === End of file valgrind124 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/1/valgrind119 ../src/curl -q --output log/1/curl119.out --include --trace-ascii log/1/trace119 --trace-time ftp://127.0.0.1:35701/119 -P - > log/1/stdout119 2> log/1/stderr119 119: 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 119 === 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 ==81271== ==81271== Process terminating with default action of signal 4 (SIGILL) ==81271== Illegal opcode at address 0x10B06D ==81271== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81271== by 0x10B06D: main (tool_main.c:234) === End of file valgrind119 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/5/valgrind121 ../src/curl -q --output log/5/curl121.out --include --trace-ascii log/5/trace121 --trace-time ftp://127.0.0.1:35155/121 -Q "-DELE after_transfer" -Q "DELE before_transfer" > log/5/stdout121 2> log/5/stderr121 121: 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 121 === Start of file server.cmd Testnum 121 === End of file server.cmd === Start of file valgrind121 ==81286== ==81286== Process terminating with default action of signal 4 (SIGILL) ==81286== Illegal opcode at address 0x10B06D ==81286== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81286== by 0x10B06D: main (tool_main.c:234) === End of file valgrind121 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/10/valgrind125 ../src/curl -q --output log/10/curl125.out --include --trace-ascii log/10/trace125 --trace-time ftp://127.0.0.1:33661/path/to/file/125 > log/10/stdout125 2> log/10/stderr125 125: 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 125 === Start of file server.cmd REPLY CWD 314 bluah you f00l Testnum 125 === End of file server.cmd === Start of file valgrind125 ==81290== ==81290== Process terminatingCMD (33792): ../libtool --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/valgrind127 ../src/curl -q --output log/6/curl127.out --include --trace-ascii log/6/trace127 --trace-time ftp://127.0.0.1:35103/path/to/file/127 --disable-epsv > log/6/stdout127 2> log/6/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/8/valgrind128 ../src/curl -q --output log/8/curl128.out --include --trace-ascii log/8/trace128 --trace-time ftp://127.0.0.1:43509/128 -T log/8/upload128 --crlf > log/8/stdout128 2> log/8/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/9/valgrind126 ../src/curl -q --output log/9/curl126.out --include --trace-ascii log/9/trace126 --trace-time ftp://127.0.0.1:39811/blalbla/lululul/126 > log/9/stdout126 2> log/9/stderr126 CMD (33792): ../libtool --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/valgrind111 ../src/curl -q --output log/11/curl111.out --include --trace-ascii log/11/trace111 --trace-time ftp://127.0.0.1:36091/111 -C 2000 > log/11/stdout111 2> log/11/stderr111 with default action of signal 4 (SIGILL) ==81290== Illegal opcode at address 0x10B06D ==81290== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81290== by 0x10B06D: main (tool_main.c:234) === End of file valgrind125 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/6/valgrind127 ../src/curl -q --output log/6/curl127.out --include --trace-ascii log/6/trace127 --trace-time ftp://127.0.0.1:35103/path/to/file/127 --disable-epsv > log/6/stdout127 2> log/6/stderr127 127: 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 127 === Start of file server.cmd Testnum 127 === End of file server.cmd === Start of file valgrind127 ==81611== ==81611== Process terminating with default action of signal 4 (SIGILL) ==81611== Illegal opcode at address 0x10B06D ==81611== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81611== by 0x10B06D: main (tool_main.c:234) === End of file valgrind127 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/8/valgrind128 ../src/curl -q --output log/8/curl128.out --include --trace-ascii log/8/trace128 --trace-time ftp://127.0.0.1:43509/128 -T log/8/upload128 --crlf > log/8/stdout128 2> log/8/stderr128 128: 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 128 === 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 ==81645== ==81645== Process terminating with default action of signal 4 (SIGILL) ==81645== Illegal opcode at address 0x10B06D ==81645== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81645== by 0x10B06D: main (tool_main.c:234) === End of file valgrind128 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/9/valgrind126 ../src/curl -q --output log/9/curl126.out --include --trace-ascii log/9/trace126 --trace-time ftp://127.0.0.1:39811/blalbla/lululul/126 > log/9/stdout126 2> log/9/stderr126 126: 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 126 === Start of file server.cmd RETRWEIRDO Testnum 126 === End of file server.cmd === Start of file valgrind126 ==81609== ==81609== Process terminating with default action of signal 4 (SIGILL) ==81609== Illegal opcode at address 0x10B06D ==81609== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81609== by 0x10B06D: main (tool_main.c:234) === End of file valgrind126 startnew: perl -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 36091 (log/11/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:36091/verifiedserver" 2>log/11/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 80591 port 36091 * pid ftp => 80591 80591 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/11/valgrind111 ../src/curl -q --output log/11/curl111.out --include --trace-ascii log/11/trace111 --trace-time ftp://127.0.0.1:36091/111 -C 2000 > log/11/stdout111 2> log/11/stderr111 111: 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 111 === Start of file ftp_server.log 11:15:50.318946 FTP server listens on port IPv4/36091 11:15:50.319013 logged pid 80591 in log/11/server/ftp_server.pid 11:15:50.319033 Awaiting input 11:15:51.321693 ====> Client connect 11:15:51.321867 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:51.322301 < "USER anonymous" 11:15:51.322333 > "331 We are happy you popped in![CR][LF]" 11:15:51.322469 < "PASS ftp@example.com" 11:15:51.322489 > "230 Welcome you silly person[CR][LF]" 11:15:51.322601 < "PWD" 11:15:51.322622 > "257 "/" is current directory[CR][LF]" 11:15:51.322739 < "EPSV" 11:15:51.322759 ====> Passive DATA channel requested by client 11:15:51.322768 DATA sockfilt for passive data channel starting... 11:15:51.324163 DATA sockfilt for passive data channel started (pid 81753) 11:15:51.324242 DATA sockfilt for passive data channel listens on port 36761 11:15:51.324272 > "229 Entering Passive Mode (|||36761|)[LF]" 11:15:51.324283 Client has been notified that DATA conn will be accepted on port 36761 11:15:51.324480 Client connects to port 36761 11:15:51.324503 ====> Client established passive DATA connection on port 36761 11:15:51.324553 < "TYPE I" 11:15:51.324574 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:51.324690 < "SIZE verifiedserver" 11:15:51.324720 > "213 17[CR][LF]" 11:15:51.324832 < "RETR verifiedserver" 11:15:51.324857 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:51.324924 =====> Closing passive DATA connection... 11:15:51.324937 Server disconnects passive DATA connection 11:15:51.325130 Server disconnected passive DATA connection 11:15:51.325154 DATA sockfilt for passive data channel quits (pid 81753) 11:15:51.325328 DATA sockfilt for passive data channel quit (pid 81753) 11:15:51.325347 =====> Closed passive DATA connection 11:15:51.325369 > "226 File transfer complete[CR][LF]" 11:15:51.368993 < "QUIT" 11:15:51.369036 > "221 bye bye baby[CR][LF]" 11:15:51.370097 MAIN sockfilt said DISC 11:15:51.370126 ====> Client disconnected 11:15:51.370174 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:15:50.836030 Running IPv4 version 11:15:50.836134 Listening on port 36091 11:15:50.836162 Wrote pid 80592 to log/11/server/ftp_sockctrl.pid 11:15:50.836184 Wrote port 36091 to log/11/server/ftp_server.port 11:15:50.836198 Received PING (on stdin) 11:15:51.838936 ====> Client connect 11:15:51.839203 Received DATA (on stdin) 11:15:51.839213 > 160 bytes data, server => client 11:15:51.839223 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:51.839232 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:51.839240 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:51.839312 < 16 bytes data, client => server 11:15:51.839321 'USER anonymous\r\n' 11:15:51.839662 Received DATA (on stdin) 11:15:51.839673 > 33 bytes data, server => client 11:15:51.839681 '331 We are happy you popped in!\r\n' 11:15:51.839727 < 22 bytes data, client => server 11:15:51.839735 'PASS ftp@example.com\r\n' 11:15:51.839814 Received DATA (on stdin) 11:15:51.839822 > 30 bytes data, server => client 11:15:51.839830 '230 Welcome you silly person\r\n' 11:15:51.839868 < 5 bytes data, client => server 11:15:51.839875 'PWD\r\n' 11:15:51.839945 Received DATA (on stdin) 11:15:51.839953 > 30 bytes data, server => client 11:15:51.839960 '257 "/" is current directory\r\n' 11:15:51.840005 < 6 bytes data, client => server 11:15:51.840012 'EPSV\r\n' 11:15:51.841612 Received DATA CMD (33792): ../libtool --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/valgrind129 ../src/curl -q --output log/2/curl129.out --include --trace-ascii log/2/trace129 --trace-time http://127.0.0.1:44205/129 > log/2/stdout129 2> log/2/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/4/valgrind130 ../src/curl -q --output log/4/curl130.out --include --trace-ascii log/4/trace130 --trace-time --netrc-optional --netrc-file log/4/netrc130 ftp://127.0.0.1:36137/ > log/4/stdout130 2> log/4/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/12/valgrind132 ../src/curl -q --output log/12/curl132.out --include --trace-ascii log/12/trace132 --trace-time --netrc-optional --netrc-file log/12/netrc132 ftp://mary:mark@127.0.0.1:41005/ > log/12/stdout132 2> log/12/stderr132 CMD (33792): ../libtool --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/valgrind136 ../src/curl -q --output log/10/curl136.out --include --trace-ascii log/10/trace136 --trace-time -u user: ftp://127.0.0.1:33661/136 > log/10/stdout136 2> log/10/stderr136 CMD (33792): ../libtool --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/valgrind135 ../src/curl -q --output log/5/curl135.out --include --trace-ascii log/5/trace135 --trace-time -r 4-16 ftp://127.0.0.1:35155/135 > log/5/stdout135 2> log/5/stderr135 CMD (33792): ../libtool --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/valgrind131 ../src/curl -q --output log/3/curl131.out --include --trace-ascii log/3/trace131 --trace-time --netrc-optional --netrc-file log/3/netrc131 ftp://user2@127.0.0.1:45493/ > log/3/stdout131 2> log/3/stderr131 (on stdin) 11:15:51.841622 > 38 bytes data, server => client 11:15:51.841631 '229 Entering Passive Mode (|||36761|)\n' 11:15:51.841744 < 8 bytes data, client => server 11:15:51.841754 'TYPE I\r\n' 11:15:51.841897 Received DATA (on stdin) 11:15:51.841906 > 33 bytes data, server => client 11:15:51.841914 '200 I modify TYPE as you wanted\r\n' 11:15:51.841955 < 21 bytes data, client => server 11:15:51.841963 'SIZE verifiedserver\r\n' 11:15:51.842046 Received DATA (on stdin) 11:15:51.842055 > 8 bytes data, server => client 11:15:51.842062 '213 17\r\n' 11:15:51.842099 < 21 bytes data, client => server 11:15:51.842107 'RETR verifiedserver\r\n' 11:15:51.842263 Received DATA (on stdin) 11:15:51.842272 > 29 bytes data, server => client 11:15:51.842280 '150 Binary junk (17 bytes).\r\n' 11:15:51.842694 Received DATA (on stdin) 11:15:51.842704 > 28 bytes data, server => client 11:15:51.842712 '226 File transfer complete\r\n' 11:15:51.886154 < 6 bytes data, client => server 11:15:51.886183 'QUIT\r\n' 11:15:51.886364 Received DATA (on stdin) 11:15:51.886372 > 18 bytes data, server => client 11:15:51.886380 '221 bye bye baby\r\n' 11:15:51.887132 ====> Client disconnect 11:15:51.887502 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:15:51.841247 Running IPv4 version 11:15:51.841302 Listening on port 36761 11:15:51.841332 Wrote pid 81753 to log/11/server/ftp_sockdata.pid 11:15:51.841445 Received PING (on stdin) 11:15:51.841505 Received PORT (on stdin) 11:15:51.841769 ====> Client connect 11:15:51.842314 Received DATA (on stdin) 11:15:51.842324 > 17 bytes data, server => client 11:15:51.842332 'WE ROOLZ: 80591\r\n' 11:15:51.842355 Received DISC (on stdin) 11:15:51.842364 ====> Client forcibly disconnected 11:15:51.842486 Received QUIT (on stdin) 11:15:51.842494 quits 11:15:51.842530 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 111 === End of file server.cmd === Start of file valgrind111 ==81775== ==81775== Process terminating with default action of signal 4 (SIGILL) ==81775== Illegal opcode at address 0x10B06D ==81775== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81775== by 0x10B06D: main (tool_main.c:234) === End of file valgrind111 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/2/valgrind129 ../src/curl -q --output log/2/curl129.out --include --trace-ascii log/2/trace129 --trace-time http://127.0.0.1:44205/129 > log/2/stdout129 2> log/2/stderr129 129: 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 129 === Start of file server.cmd Testnum 129 === End of file server.cmd === Start of file valgrind129 ==81826== ==81826== Process terminating with default action of signal 4 (SIGILL) ==81826== Illegal opcode at address 0x10B06D ==81826== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81826== by 0x10B06D: main (tool_main.c:234) === End of file valgrind129 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/4/valgrind130 ../src/curl -q --output log/4/curl130.out --include --trace-ascii log/4/trace130 --trace-time --netrc-optional --netrc-file log/4/netrc130 ftp://127.0.0.1:36137/ > log/4/stdout130 2> log/4/stderr130 130: 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 130 === 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 ==81874== ==81874== Process terminating with default action of signal 4 (SIGILL) ==81874== Illegal opcode at address 0x10B06D ==81874== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81874== by 0x10B06D: main (tool_main.c:234) === End of file valgrind130 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/12/valgrind132 ../src/curl -q --output log/12/curl132.out --include --trace-ascii log/12/trace132 --trace-time --netrc-optional --netrc-file log/12/netrc132 ftp://mary:mark@127.0.0.1:41005/ > log/12/stdout132 2> log/12/stderr132 132: 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 132 === 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 ==81926== ==81926== Process terminating with default action of signal 4 (SIGILL) ==81926== Illegal opcode at address 0x10B06D ==81926== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81926== by 0x10B06D: main (tool_main.c:234) === End of file valgrind132 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/10/valgrind136 ../src/curl -q --output log/10/curl136.out --include --trace-ascii log/10/trace136 --trace-time -u user: ftp://127.0.0.1:33661/136 > log/10/stdout136 2> log/10/stderr136 136: 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 136 === Start of file server.cmd Testnum 136 === End of file server.cmd === Start of file valgrind136 ==81962== ==81962== Process terminating with default action of signal 4 (SIGILL) ==81962== Illegal opcode at address 0x10B06D ==81962== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81962== by 0x10B06D: main (tool_main.c:234) === End of file valgrind136 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/5/valgrind135 ../src/curl -q --output log/5/curl135.out --include --trace-ascii log/5/trace135 --trace-time -r 4-16 ftp://127.0.0.1:35155/135 > log/5/stdout135 2> log/5/stderr135 135: 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 135 === Start of file server.cmd Testnum 135 === End of file server.cmd === Start of file valgrind135 ==81957== ==81957== Process terminating with default action of signal 4 (SIGILL) ==81957== Illegal opcode at address 0x10B06D ==81957== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81957== by 0x10B06D: main (tool_main.c:234) === End of file valgrind135 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/3/valgrind131 ../src/curl -q --output log/3/curl131.out --include --trace-ascii log/3/trace131 --trace-time --netrc-optional --netrc-file log/3/netrc131 ftp://user2@127.0.0.1:45493/ > log/3/stdout13CMD (33792): ../libtool --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/valgrind134 ../src/curl -q --output log/1/curl134.out --include --trace-ascii log/1/trace134 --trace-time --netrc-optional --netrc-file log/1/netrc134 -u romulus:rhemus ftp://mary:mark@127.0.0.1:35701/ > log/1/stdout134 2> log/1/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/7/valgrind133 ../src/curl -q --output log/7/curl133.out --include --trace-ascii log/7/trace133 --trace-time -n --netrc-file log/7/netrc133 ftp://mary:mark@127.0.0.1:45903/ > log/7/stdout133 2> log/7/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/6/valgrind137 ../src/curl -q --output log/6/curl137.out --include --trace-ascii log/6/trace137 --trace-time ftp://127.0.0.1:35103/blalbla/lululul/137 > log/6/stdout137 2> log/6/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/9/valgrind139 ../src/curl -q --output log/9/curl139.out --include --trace-ascii log/9/trace139 --trace-time ftp://127.0.0.1:39811/blalbla/139 -z "1 jan 1989" > log/9/stdout139 2> log/9/stderr139 CMD (33792): ../libtool --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/valgrind138 ../src/curl -q --output log/8/curl138.out --include --trace-ascii log/8/trace138 --trace-time ftp://127.0.0.1:43509/blalbla/lululul/138 > log/8/stdout138 2> log/8/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/11/valgrind140 ../src/curl -q --output log/11/curl140.out --include --trace-ascii log/11/trace140 --trace-time ftp://127.0.0.1:36091/blalbla/140 -z "1 jan 2004" > log/11/stdout140 2> log/11/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/2/valgrind141 ../src/curl -q --include --trace-ascii log/2/trace141 --trace-time ftp://127.0.0.1:38659/blalbla/141 -I > log/2/stdout141 2> log/2/stderr141 1 2> log/3/stderr131 131: 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 131 === 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 ==81927== ==81927== Process terminating with default action of signal 4 (SIGILL) ==81927== Illegal opcode at address 0x10B06D ==81927== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81927== by 0x10B06D: main (tool_main.c:234) === End of file valgrind131 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/1/valgrind134 ../src/curl -q --output log/1/curl134.out --include --trace-ascii log/1/trace134 --trace-time --netrc-optional --netrc-file log/1/netrc134 -u romulus:rhemus ftp://mary:mark@127.0.0.1:35701/ > log/1/stdout134 2> log/1/stderr134 134: 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 134 === 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 ==81948== ==81948== Process terminating with default action of signal 4 (SIGILL) ==81948== Illegal opcode at address 0x10B06D ==81948== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81948== by 0x10B06D: main (tool_main.c:234) === End of file valgrind134 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/7/valgrind133 ../src/curl -q --output log/7/curl133.out --include --trace-ascii log/7/trace133 --trace-time -n --netrc-file log/7/netrc133 ftp://mary:mark@127.0.0.1:45903/ > log/7/stdout133 2> log/7/stderr133 133: 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 133 === 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 ==81947== ==81947== Process terminating with default action of signal 4 (SIGILL) ==81947== Illegal opcode at address 0x10B06D ==81947== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==81947== by 0x10B06D: main (tool_main.c:234) === End of file valgrind133 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/6/valgrind137 ../src/curl -q --output log/6/curl137.out --include --trace-ascii log/6/trace137 --trace-time ftp://127.0.0.1:35103/blalbla/lululul/137 > log/6/stdout137 2> log/6/stderr137 137: 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 137 === Start of file server.cmd RETRNOSIZE Testnum 137 === End of file server.cmd === Start of file valgrind137 ==82228== ==82228== Process terminating with default action of signal 4 (SIGILL) ==82228== Illegal opcode at address 0x10B06D ==82228== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82228== by 0x10B06D: main (tool_main.c:234) === End of file valgrind137 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/9/valgrind139 ../src/curl -q --output log/9/curl139.out --include --trace-ascii log/9/trace139 --trace-time ftp://127.0.0.1:39811/blalbla/139 -z "1 jan 1989" > log/9/stdout139 2> log/9/stderr139 139: 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 139 === Start of file server.cmd Testnum 139 === End of file server.cmd === Start of file valgrind139 ==82260== ==82260== Process terminating with default action of signal 4 (SIGILL) ==82260== Illegal opcode at address 0x10B06D ==82260== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82260== by 0x10B06D: main (tool_main.c:234) === End of file valgrind139 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/8/valgrind138 ../src/curl -q --output log/8/curl138.out --include --trace-ascii log/8/trace138 --trace-time ftp://127.0.0.1:43509/blalbla/lululul/138 > log/8/stdout138 2> log/8/stderr138 138: 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 138 === Start of file server.cmd RETRNOSIZE REPLY SIZE 500 command not understood Testnum 138 === End of file server.cmd === Start of file valgrind138 ==82250== ==82250== Process terminating with default action of signal 4 (SIGILL) ==82250== Illegal opcode at address 0x10B06D ==82250== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82250== by 0x10B06D: main (tool_main.c:234) === End of file valgrind138 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/11/valgrind140 ../src/curl -q --output log/11/curl140.out --include --trace-ascii log/11/trace140 --trace-time ftp://127.0.0.1:36091/blalbla/140 -z "1 jan 2004" > log/11/stdout140 2> log/11/stderr140 140: 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 140 === Start of file server.cmd Testnum 140 === End of file server.cmd === Start of file valgrind140 ==82377== ==82377== Process terminating with default action of signal 4 (SIGILL) ==82377== Illegal opcode at address 0x10B06D ==82377== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82377== by 0x10B06D: main (tool_main.c:234) === End of file valgrind140 CMD (33792): ../libtool --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/valgrind142 ../src/curl -q --output log/4/curl142.out --include --trace-ascii log/4/trace142 --trace-time ftp://127.0.0.1:36137/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/4/stdout142 2> log/4/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/12/valgrind143 ../src/curl -q --output log/12/curl143.out --include --trace-ascii log/12/trace143 --trace-time "ftp://127.0.0.1:41005/%2ftmp/moo/143;type=a" > log/12/stdout143 2> log/12/stderr143 CMD (33792): ../libtool --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/valgrind144 ../src/curl -q --output log/10/curl144.out --include --trace-ascii log/10/trace144 --trace-time ftp://127.0.0.1:33661/ -P - -l > log/10/stdout144 2> log/10/stderr144 CMD (33792): ../libtool --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/valgrind145 ../src/curl -q --output log/5/curl145.out --include --trace-ascii log/5/trace145 --trace-time ftp://127.0.0.1:35155/ -P - -l > log/5/stdout145 2> log/5/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/7/valgrind148 ../src/curl -q --output log/7/curl148.out --include --trace-ascii log/7/trace148 --trace-time ftp://127.0.0.1:45903/attempt/to/get/this/148 --ftp-create-dirs > log/7/stdout148 2> log/7/stderr148 CMD (33792): ../libtool --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/valgrind146 ../src/curl -q --output log/3/curl146.out --include --trace-ascii log/3/trace146 --trace-time ftp://127.0.0.1:45493/first/dir/here/146 ftp://127.0.0.1:45493/146 > log/3/stdout146 2> log/3/stderr146 CMD (33792): ../libtool --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/valgrind147 ../src/curl -q --output log/1/curl147.out --include --trace-ascii log/1/trace147 --trace-time ftp://127.0.0.1:35701/first/dir/here/147 --ftp-create-dirs > log/1/stdout147 2> log/1/stderr147 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/2/valgrind141 ../src/curl -q --include --trace-ascii log/2/trace141 --trace-time ftp://127.0.0.1:38659/blalbla/141 -I > log/2/stdout141 2> log/2/stderr141 141: stdout FAILED: --- log/2/check-expected 2024-05-23 11:15:52.803161835 +0200 +++ log/2/check-generated 2024-05-23 11:15:52.803161835 +0200 @@ -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/2/ 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 server.cmd Testnum 141 === End of file server.cmd === Start of file valgrind141 ==82427== ==82427== Process terminating with default action of signal 4 (SIGILL) ==82427== Illegal opcode at address 0x10B06D ==82427== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82427== by 0x10B06D: main (tool_main.c:234) === End of file valgrind141 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/4/valgrind142 ../src/curl -q --output log/4/curl142.out --include --trace-ascii log/4/trace142 --trace-time ftp://127.0.0.1:36137/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/4/stdout142 2> log/4/stderr142 142: 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 142 === Start of file server.cmd Testnum 142 === End of file server.cmd === Start of file valgrind142 ==82475== ==82475== Process terminating with default action of signal 4 (SIGILL) ==82475== Illegal opcode at address 0x10B06D ==82475== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82475== by 0x10B06D: main (tool_main.c:234) === End of file valgrind142 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/12/valgrind143 ../src/curl -q --output log/12/curl143.out --include --trace-ascii log/12/trace143 --trace-time "ftp://127.0.0.1:41005/%2ftmp/moo/143;type=a" > log/12/stdout143 2> log/12/stderr143 143: 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 143 === Start of file server.cmd Testnum 143 === End of file server.cmd === Start of file valgrind143 ==82476== ==82476== Process terminating with default action of signal 4 (SIGILL) ==82476== Illegal opcode at address 0x10B06D ==82476== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82476== by 0x10B06D: main (tool_main.c:234) === End of file valgrind143 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/10/valgrind144 ../src/curl -q --output log/10/curl144.out --include --trace-ascii log/10/trace144 --trace-time ftp://127.0.0.1:33661/ -P - -l > log/10/stdout144 2> log/10/stderr144 144: 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 144 === Start of file server.cmd REPLY NLST 450 No files found Testnum 144 === End of file server.cmd === Start of file valgrind144 ==82541== ==82541== Process terminating with default action of signal 4 (SIGILL) ==82541== Illegal opcode at address 0x10B06D ==82541== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82541== by 0x10B06D: main (tool_main.c:234) === End of file valgrind144 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/5/valgrind145 ../src/curl -q --output log/5/curl145.out --include --trace-ascii log/5/trace145 --trace-time ftp://127.0.0.1:35155/ -P - -l > log/5/stdout145 2> log/5/stderr145 145: 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 145 === Start of file server.cmd REPLY NLST 550 Have a taste on this Testnum 145 === End of file server.cmd === Start of file valgrind145 ==82539== ==82539== Process terminating with default action of signal 4 (SIGILL) ==82539== Illegal opcode at address 0x10B06D ==82539== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82539== by 0x10B06D: main (tool_main.c:234) === End of file valgrind145 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/7/valgrind148 ../src/curl -q --output log/7/curl148.out --include --trace-ascii log/7/trace148 --trace-time ftp://127.0.0.1:45903/attempt/to/get/this/148 --ftp-create-dirs > log/7/stdout148 2> log/7/stderr148 148: 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 148 === 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 ==82680== ==82680== Process terminating with default action of signal 4 (SIGILL) ==82680== Illegal opcode at address 0x10B06D ==82680== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82680== by 0x10B06D: main (tool_main.c:234) === End of file valgrind148 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/3/valgrind146 ../src/curl -q --output log/3/curl146.out --include --trace-ascii log/3/trace146 --trace-time ftp://127.0.0.1:45493/first/dir/here/146 ftp://127.0.0.1:45493/146 > log/3/stdout146 2> log/3/stderr146 146: 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 146 === Start of file server.cmd Testnum 146 === End of file server.cmd === Start of file valgrind146 ==82564== ==82564== Process terminating with default action of signal 4 (SIGILL) ==825CMD (33792): ../libtool --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/valgrind149 ../src/curl -q --output log/6/curl149.out --include --trace-ascii log/6/trace149 --trace-time -T log/6/upload149 ftp://127.0.0.1:35103/dir1/149 -T log/6/upload149 ftp://127.0.0.1:35103/dir2/149 > log/6/stdout149 2> log/6/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/8/valgrind151 ../src/curl -q --output log/8/curl151.out --include --trace-ascii log/8/trace151 --trace-time http://127.0.0.1:33791/151 > log/8/stdout151 2> log/8/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/9/valgrind150 ../src/curl -q --output log/9/curl150.out --include --trace-ascii log/9/trace150 --trace-time http://127.0.0.1:40247/150 -u testuser:testpass --ntlm --fail > log/9/stdout150 2> log/9/stderr150 CMD (33792): ../libtool --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/valgrind152 ../src/curl -q --output log/11/curl152.out --include --trace-ascii log/11/trace152 --trace-time http://127.0.0.1:35843/152 --fail > log/11/stdout152 2> log/11/stderr152 CMD (33792): ../libtool --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/valgrind153 ../src/curl -q --include --trace-ascii log/2/trace153 --trace-time http://127.0.0.1:44205/1530001 -u testuser:testpass --digest http://127.0.0.1:44205/1530002 > log/2/stdout153 2> log/2/stderr153 64== Illegal opcode at address 0x10B06D ==82564== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82564== by 0x10B06D: main (tool_main.c:234) === End of file valgrind146 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/1/valgrind147 ../src/curl -q --output log/1/curl147.out --include --trace-ascii log/1/trace147 --trace-time ftp://127.0.0.1:35701/first/dir/here/147 --ftp-create-dirs > log/1/stdout147 2> log/1/stderr147 147: 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 147 === 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 ==82604== ==82604== Process terminating with default action of signal 4 (SIGILL) ==82604== Illegal opcode at address 0x10B06D ==82604== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82604== by 0x10B06D: main (tool_main.c:234) === End of file valgrind147 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/6/valgrind149 ../src/curl -q --output log/6/curl149.out --include --trace-ascii log/6/trace149 --trace-time -T log/6/upload149 ftp://127.0.0.1:35103/dir1/149 -T log/6/upload149 ftp://127.0.0.1:35103/dir2/149 > log/6/stdout149 2> log/6/stderr149 149: 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 149 === 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 ==82805== ==82805== Process terminating with default action of signal 4 (SIGILL) ==82805== Illegal opcode at address 0x10B06D ==82805== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82805== by 0x10B06D: main (tool_main.c:234) === End of file valgrind149 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/8/valgrind151 ../src/curl -q --output log/8/curl151.out --include --trace-ascii log/8/trace151 --trace-time http://127.0.0.1:33791/151 > log/8/stdout151 2> log/8/stderr151 151: 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 151 === Start of file server.cmd Testnum 151 === End of file server.cmd === Start of file valgrind151 ==82819== ==82819== Process terminating with default action of signal 4 (SIGILL) ==82819== Illegal opcode at address 0x10B06D ==82819== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82819== by 0x10B06D: 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/9/valgrind150 ../src/curl -q --output log/9/curl150.out --include --trace-ascii log/9/trace150 --trace-time http://127.0.0.1:40247/150 -u testuser:testpass --ntlm --fail > log/9/stdout150 2> log/9/stderr150 150: 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 150 === Start of file server.cmd Testnum 150 === End of file server.cmd === Start of file valgrind150 ==82825== ==82825== Process terminating with default action of signal 4 (SIGILL) ==82825== Illegal opcode at address 0x10B06D ==82825== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82825== by 0x10B06D: main (tool_main.c:234) === End of file valgrind150 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/11/valgrind152 ../src/curl -q --output log/11/curl152.out --include --trace-ascii log/11/trace152 --trace-time http://127.0.0.1:35843/152 --fail > log/11/stdout152 2> log/11/stderr152 152: 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 152 === Start of file server.cmd Testnum 152 === End of file server.cmd === Start of file valgrind152 ==82965== ==82965== Process terminating with default action of signal 4 (SIGILL) ==82965== Illegal opcode at address 0x10B06D ==82965== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==82965== by 0x10B06D: main (tool_main.c:234) === End of file valgrind152 CMD (33792): ../libtool --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/valgrind154 ../src/curl -q --output log/4/curl154.out --include --trace-ascii log/4/trace154 --trace-time http://127.0.0.1:41947/154 -T log/4/put154 -u testuser:testpass --anyauth > log/4/stdout154 2> log/4/stderr154 CMD (33792): ../libtool --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/valgrind155 ../src/curl -q --output log/12/curl155.out --include --trace-ascii log/12/trace155 --trace-time http://127.0.0.1:44175/155 -T log/12/put155 -u testuser:testpass --anyauth > log/12/stdout155 2> log/12/stderr155 CMD (33792): ../libtool --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/valgrind156 ../src/curl -q --output log/10/curl156.out --include --trace-ascii log/10/trace156 --trace-time http://127.0.0.1:36145/156 -T log/10/put156 -u testuser:testpass --anyauth > log/10/stdout156 2> log/10/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/7/valgrind158 ../src/curl -q --output log/7/curl158.out --include --trace-ascii log/7/trace158 --trace-time http://127.0.0.1:35853/158 -F name=daniel > log/7/stdout158 2> log/7/stderr158 CMD (33792): ../libtool --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-time http://127.0.0.1:33519/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/1/valgrind161 ../src/curl -q --output log/1/curl161.out --include --trace-ascii log/1/trace161 --trace-time ftp://127.0.0.1:35701/161 > log/1/stdout161 2> log/1/stderr161 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/2/valgrind153 ../src/curl -q --include --trace-ascii log/2/trace153 --trace-time http://127.0.0.1:44205/1530001 -u testuser:testpass --digest http://127.0.0.1:44205/1530002 > log/2/stdout153 2> log/2/stderr153 153: stdout FAILED: --- log/2/check-expected 2024-05-23 11:15:53.443174972 +0200 +++ log/2/check-generated 2024-05-23 11:15:53.443174972 +0200 @@ -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/2/ 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 server.cmd Testnum 153 === End of file server.cmd === Start of file valgrind153 ==83015== ==83015== Process terminating with default action of signal 4 (SIGILL) ==83015== Illegal opcode at address 0x10B06D ==83015== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83015== by 0x10B06D: main (tool_main.c:234) === End of file valgrind153 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/4/valgrind154 ../src/curl -q --output log/4/curl154.out --include --trace-ascii log/4/trace154 --trace-time http://127.0.0.1:41947/154 -T log/4/put154 -u testuser:testpass --anyauth > log/4/stdout154 2> log/4/stderr154 154: 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 154 === 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 valgrind154 ==83064== ==83064== Process terminating with default action of signal 4 (SIGILL) ==83064== Illegal opcode at address 0x10B06D ==83064== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83064== by 0x10B06D: main (tool_main.c:234) === End of file valgrind154 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/12/valgrind155 ../src/curl -q --output log/12/curl155.out --include --trace-ascii log/12/trace155 --trace-time http://127.0.0.1:44175/155 -T log/12/put155 -u testuser:testpass --anyauth > log/12/stdout155 2> log/12/stderr155 155: 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 155 === 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 valgrind155 ==83091== ==83091== Process terminating with default action of signal 4 (SIGILL) ==83091== Illegal opcode at address 0x10B06D ==83091== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83091== by 0x10B06D: main (tool_main.c:234) === End of file valgrind155 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/10/valgrind156 ../src/curl -q --output log/10/curl156.out --include --trace-ascii log/10/trace156 --trace-time http://127.0.0.1:36145/156 -T log/10/put156 -u testuser:testpass --anyauth > log/10/stdout156 2> log/10/stderr156 156: 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 156 === 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 valgrind156 ==83125== ==83125== Process terminating with default action of signal 4 (SIGILL) ==83125== Illegal opcode at address 0x10B06D ==83125== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83125== by 0x10B06D: main (tool_main.c:234) === End of file valgrind156 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/7/valgrind158 ../src/curl -q --output log/7/curl158.out --include --trace-ascii log/7/trace158 --trace-time http://127.0.0.1:35853/158 -F name=daniel > log/7/stdout158 2> log/7/stderr158 158: 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 158 === Start of file server.cmd Testnum 158 === End of file server.cmd === Start of file valgrind158 ==83190== ==83190== Process terminating with default action of signal 4 (SIGILL) ==83190== Illegal opcode at address 0x10B06D ==83190== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83190== by 0x10B06D: 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 -CMD (33792): ../libtool --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/valgrind160 ../src/curl -q --include --trace-ascii log/3/trace160 --trace-time http://127.0.0.1:46313/want/160 http://127.0.0.1:46313/wantmore/1600001 > log/3/stdout160 2> log/3/stderr160 -suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind161 ../src/curl -q --output log/1/curl161.out --include --trace-ascii log/1/trace161 --trace-time ftp://127.0.0.1:35701/161 > log/1/stdout161 2> log/1/stderr161 161: 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 161 === Start of file server.cmd Testnum 161 === End of file server.cmd === Start of file valgrind161 ==83207== ==83207== Process terminating with default action of signal 4 (SIGILL) ==83207== Illegal opcode at address 0x10B06D ==83207== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83207== by 0x10B06D: main (tool_main.c:234) === End of file valgrind161 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-time http://127.0.0.1:33519/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 server.cmd Testnum 157 === End of file server.cmd === Start of file valgrind157 ==83121== ==83121== Process terminating with default action of signal 4 (SIGILL) ==83121== Illegal opcode at address 0x10B06D ==83121== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83121== by 0x10B06D: 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/9/valgrind164 ../src/curl -q --output log/9/curl164.out --include --trace-ascii log/9/trace164 --trace-time http://127.0.0.1:40247/want/164 -r 0-10,12-15 > log/9/stdout164 2> log/9/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/6/valgrind162 ../src/curl -q --output log/6/curl162.out --include --trace-ascii log/6/trace162 --trace-time http://127.0.0.1:41583/162 --proxy http://127.0.0.1:41583 --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/8/valgrind163 ../src/curl -q --output log/8/curl163.out --include --trace-ascii log/8/trace163 --trace-time http://127.0.0.1:33791/we/want/163 -F "name= log/8/stdout163 2> log/8/stderr163 CMD (33792): ../libtool --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/valgrind165 ../src/curl -q --output log/11/curl165.out --include --trace-ascii log/11/trace165 --trace-time http://www.åäö.se/page/165 -x 127.0.0.1:35843 http://www.große.de/page/165 > log/11/stdout165 2> log/11/stderr165 CMD (33792): ../libtool --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/valgrind166 ../src/curl -q --output log/2/curl166.out --include --trace-ascii log/2/trace166 --trace-time http://127.0.0.1:44205/we/want/166 -F "name=@log/2/fie ld 166" > log/2/stdout166 2> log/2/stderr166 CMD (33792): ../libtool --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/valgrind167 ../src/curl -q --output log/4/curl167.out --include --trace-ascii log/4/trace167 --trace-time http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://127.0.0.1:41947 --proxy-user foo:bar --digest --user digest:alot > log/4/stdout167 2> log/4/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/12/valgrind168 ../src/curl -q --output log/12/curl168.out --include --trace-ascii log/12/trace168 --trace-time http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://127.0.0.1:44175 --proxy-user foo:bar --proxy-digest --digest --user digest:alot > log/12/stdout168 2> log/12/stderr168 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/3/valgrind160 ../src/curl -q --include --trace-ascii log/3/trace160 --trace-time http://127.0.0.1:46313/want/160 http://127.0.0.1:46313/wantmore/1600001 > log/3/stdout160 2> log/3/stderr160 160: stdout FAILED: --- log/3/check-expected 2024-05-23 11:15:53.626512067 +0200 +++ log/3/check-generated 2024-05-23 11:15:53.626512067 +0200 @@ -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/3/ 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 server.cmd Testnum 160 === End of file server.cmd === Start of file valgrind160 ==83229== ==83229== Process terminating with default action of signal 4 (SIGILL) ==83229== Illegal opcode at address 0x10B06D ==83229== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83229== by 0x10B06D: main (tool_main.c:234) === End of file valgrind160 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/9/valgrind164 ../src/curl -q --output log/9/curl164.out --include --trace-ascii log/9/trace164 --trace-time http://127.0.0.1:40247/want/164 -r 0-10,12-15 > log/9/stdout164 2> log/9/stderr164 164: 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 164 === Start of file server.cmd Testnum 164 === End of file server.cmd === Start of file valgrind164 ==83414== ==83414== Process terminating with default action of signal 4 (SIGILL) ==83414== Illegal opcode at address 0x10B06D ==83414== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83414== by 0x10B06D: 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-time http://127.0.0.1:41583/162 --proxy http://127.0.0.1:41583 --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 server.cmd Testnum 162 === End of file server.cmd === Start of file valgrind162 ==83413== ==83413== Process terminating with default action of signal 4 (SIGILL) ==83413== Illegal opcode at address 0x10B06D ==83413== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83413== by 0x10B06D: main (tool_main.c:234) === End of file valgrind162 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/8/valgrind163 ../src/curl -q --output log/8/curl163.out --include --trace-ascii log/8/trace163 --trace-time http://127.0.0.1:33791/we/want/163 -F "name= log/8/stdout163 2> log/8/stderr163 163: 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 163 === Start of file field163 contents from a file newlinens? yes please [tab][CR] too === End of file field163 === Start of file server.cmd Testnum 163 === End of file server.cmd === Start of file valgrind163 ==83423== ==83423== Process terminating with default action of signal 4 (SIGILL) ==83423== Illegal opcode at address 0x10B06D ==83423== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83423== by 0x10B06D: main (tool_main.c:234) === End of file valgrind163 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/11/valgrind165 ../src/curl -q --output log/11/curl165.out --include --trace-ascii log/11/trace165 --trace-time http://www.åäö.se/page/165 -x 127.0.0.1:35843 http://www.große.de/page/165 > log/11/stdout165 2> log/11/stderr165 165: 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 165 === Start of file server.cmd Testnum 165 === End of file server.cmd === Start of file valgrind165 ==83569== ==83569== Process terminating with default action of signal 4 (SIGILL) ==83569== Illegal opcode at address 0x10B06D ==83569== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83569== by 0x10B06D: main (tool_main.c:234) === End of file valgrind165 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/2/valgrind166 ../src/curl -q --output log/2/curl166.out --include --trace-ascii log/2/trace166 --trace-time http://127.0.0.1:44205/we/want/166 -F "name=@log/2/fie ld 166" > log/2/stdout166 2> log/2/stderr166 166: 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 166 === Start of file fie ld 166 data inside the file === End of file fie ld 166 === Start of file server.cmd Testnum 166 === End of file server.cmd === Start of file valgrind166 ==83621== ==83621== Process terminating with default action of signal 4 (SIGILL) ==83621== Illegal opcode at address 0x10B06D ==83621== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83621== by 0x10B06D: 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/4/valgrind167 ../src/curl -q --output log/4/curl167.out --include --trace-ascii log/4/trace167 --trace-time http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://127.0.0.1:41947 --proxy-user foo:bar --digest --user digest:alot > log/4/stdout167 2> log/4/stderr167 167: 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 167 === Start of file server.cmd Testnum 167 === End of file server.cmd === Start of file valgrind167 ==83669== ==83669== Process terminating with default action of signal 4 (SIGILL) ==83669== Illegal opcode at address 0x10B06D ==83669== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83669== by 0x10B06D: main (tool_main.c:234) === End of file valgrind167 tesCMD (33792): ../libtool --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/valgrind171 ../src/curl -q --output log/1/curl171.out --include --trace-ascii log/1/trace171 --trace-time -c log/1/jar171 -x 127.0.0.1:39283 http://z.x.com/171 > log/1/stdout171 2> log/1/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/10/valgrind169 ../src/curl -q --output log/10/curl169.out --include --trace-ascii log/10/trace169 --trace-time http://data.from.server.requiring.digest.hohoho.com/169 --proxy http://127.0.0.1:36145 --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot > log/10/stdout169 2> log/10/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/5/valgrind172 ../src/curl -q --output log/5/curl172.out --include --trace-ascii log/5/trace172 --trace-time http://127.0.0.1:33519/we/want/172 -b log/5/jar172.txt -b "tool=curl; name=fool" > log/5/stdout172 2> log/5/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/7/valgrind170 ../src/curl -q --output log/7/curl170.out --include --trace-ascii log/7/trace170 --trace-time http://a.galaxy.far.far.away/170 --proxy http://127.0.0.1:35853 --proxy-user foo:bar --proxy-ntlm -F "dummy=value" > log/7/stdout170 2> log/7/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/3/valgrind173 ../src/curl -q --output log/3/curl173.out --include --trace-ascii log/3/trace173 --trace-time http://127.0.0.1:46313/we/want/173 -F field1=contents1 -F "fileupload=@-;filename=/dev/null;type=text/x-null;format=x-curl" log/3/stdout173 2> log/3/stderr173 CMD (33792): ../libtool --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/valgrind175 ../src/curl -q --output log/6/curl175.out --include --trace-ascii log/6/trace175 --trace-time http://127.0.0.1:41583/175 -u auser:apasswd --digest -d "junkelijunk" > log/6/stdout175 2> log/6/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/9/valgrind174 ../src/curl -q --output log/9/curl174.out --include --trace-ascii log/9/trace174 --trace-time http://127.0.0.1:40247/174 -u testuser:testpass --anyauth -d "junkelijunk" > log/9/stdout174 2> log/9/stderr174 t 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/12/valgrind168 ../src/curl -q --output log/12/curl168.out --include --trace-ascii log/12/trace168 --trace-time http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://127.0.0.1:44175 --proxy-user foo:bar --proxy-digest --digest --user digest:alot > log/12/stdout168 2> log/12/stderr168 168: 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 168 === Start of file server.cmd Testnum 168 === End of file server.cmd === Start of file valgrind168 ==83693== ==83693== Process terminating with default action of signal 4 (SIGILL) ==83693== Illegal opcode at address 0x10B06D ==83693== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83693== by 0x10B06D: main (tool_main.c:234) === End of file valgrind168 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/1/valgrind171 ../src/curl -q --output log/1/curl171.out --include --trace-ascii log/1/trace171 --trace-time -c log/1/jar171 -x 127.0.0.1:39283 http://z.x.com/171 > log/1/stdout171 2> log/1/stderr171 171: 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 171 === Start of file server.cmd Testnum 171 === End of file server.cmd === Start of file valgrind171 ==83758== ==83758== Process terminating with default action of signal 4 (SIGILL) ==83758== Illegal opcode at address 0x10B06D ==83758== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83758== by 0x10B06D: main (tool_main.c:234) === End of file valgrind171 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/10/valgrind169 ../src/curl -q --output log/10/curl169.out --include --trace-ascii log/10/trace169 --trace-time http://data.from.server.requiring.digest.hohoho.com/169 --proxy http://127.0.0.1:36145 --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot > log/10/stdout169 2> log/10/stderr169 169: 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 169 === Start of file server.cmd Testnum 169 === End of file server.cmd === Start of file valgrind169 ==83759== ==83759== Process terminating with default action of signal 4 (SIGILL) ==83759== Illegal opcode at address 0x10B06D ==83759== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83759== by 0x10B06D: main (tool_main.c:234) === End of file valgrind169 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/5/valgrind172 ../src/curl -q --output log/5/curl172.out --include --trace-ascii log/5/trace172 --trace-time http://127.0.0.1:33519/we/want/172 -b log/5/jar172.txt -b "tool=curl; name=fool" > log/5/stdout172 2> log/5/stderr172 172: 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 172 === 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 valgrind172 ==83780== ==83780== Process terminating with default action of signal 4 (SIGILL) ==83780== Illegal opcode at address 0x10B06D ==83780== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83780== by 0x10B06D: main (tool_main.c:234) === End of file valgrind172 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/7/valgrind170 ../src/curl -q --output log/7/curl170.out --include --trace-ascii log/7/trace170 --trace-time http://a.galaxy.far.far.away/170 --proxy http://127.0.0.1:35853 --proxy-user foo:bar --proxy-ntlm -F "dummy=value" > log/7/stdout170 2> log/7/stderr170 170: 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 170 === Start of file server.cmd Testnum 170 === End of file server.cmd === Start of file valgrind170 ==83762== ==83762== Process terminating with default action of signal 4 (SIGILL) ==83762== Illegal opcode at address 0x10B06D ==83762== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83762== by 0x10B06D: main (tool_main.c:234) === End of file valgrind170 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/3/valgrind173 ../src/curl -q --output log/3/curl173.out --include --trace-ascii log/3/trace173 --trace-time http://127.0.0.1:46313/we/want/173 -F field1=contents1 -F "fileupload=@-;filename=/dev/null;type=text/x-null;format=x-curl" log/3/stdout173 2> log/3/stderr173 173: 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 173 === Start of file server.cmd Testnum 173 === End of file server.cmd === Start of file stdin-for-173 line1 line2 line3 line4 line5 line6 line7 line8 === End of file stdin-for-173 === Start of file valgrind173 ==83842== ==83842== Process terminating with default action of signal 4 (SIGILL) ==83842== Illegal opcode at address 0x10B06D ==83842== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==83842== by 0x10B06D: main (tool_main.c:234) === End of file valgrind173 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/6/valgrind175 ../src/curl -q --output log/6/curl175.out --include --trace-ascii log/6/trace175 --trace-time http://127.0.0.1:41583/175 -u auser:apasswd --digest -d "junkelijunk" > log/6/stdout175 2> log/6/stderr175 175: 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 175 === Start of file server.cmd Testnum 175 === End of file server.cmd === Start of file valgrind175 ==84026== ==84026== Process terminating with default action of signal 4 (SIGILL) ==84026== Illegal opcode at address 0x10B06D ==84026== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84026== by 0x10B06D: main (tool_main.c:234) === End of file valgrind175 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 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/8/valgrind176 ../src/curl -q --output log/8/curl176.out --include --trace-ascii log/8/trace176 --trace-time http://127.0.0.1:33791/176 -u auser:apasswd --ntlm -d "junkelijunk" > log/8/stdout176 2> log/8/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/11/valgrind177 ../src/curl -q --output log/11/curl177.out --include --trace-ascii log/11/trace177 --trace-time http://127.0.0.1:35843/177 -u auser:apasswd --digest -d "junkelijunk" > log/11/stdout177 2> log/11/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/2/valgrind178 ../src/curl -q --output log/2/curl178.out --include --trace-ascii log/2/trace178 --trace-time http://127.0.0.1:44205/178 > log/2/stdout178 2> log/2/stderr178 CMD (33792): ../libtool --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/valgrind180 ../src/curl -q --output log/12/curl180.out --include --trace-ascii log/12/trace180 --trace-time http://127.0.0.1:44175/we/want/180 -T log/12/test180.txt --http1.0 > log/12/stdout180 2> log/12/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/4/valgrind179 ../src/curl -q --output log/4/curl179.out --include --trace-ascii log/4/trace179 --trace-time http://supertrooper.fake/c/179 -b log/4/injar179 -x 127.0.0.1:41947 > log/4/stdout179 2> log/4/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/1/valgrind181 ../src/curl -q --output log/1/curl181.out --include --trace-ascii log/1/trace181 --trace-time http://127.0.0.1:39283/we/want/181 --data-binary @log/1/test181.txt --http1.0 > log/1/stdout181 2> log/1/stderr181 CMD (33792): ../libtool --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/valgrind184 ../src/curl -q --output log/7/curl184.out --include --trace-ascii log/7/trace184 --trace-time http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:35853 > log/7/stdout184 2> log/7/stderr184 CMD (33792): ../libtool --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/valgrind182 ../src/curl -q --output log/10/curl182.out --include --trace-ascii log/10/trace182 --trace-time ftp://127.0.0.1:33661/182 > log/10/stdout182 2> log/10/stderr182 CMD (33792): ../libtool --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/valgrind185 ../src/curl -q --output log/3/curl185.out --include --trace-ascii log/3/trace185 --trace-time http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:46313 > log/3/stdout185 2> log/3/stderr185 og/9/curl174.out --include --trace-ascii log/9/trace174 --trace-time http://127.0.0.1:40247/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 server.cmd Testnum 174 === End of file server.cmd === Start of file valgrind174 ==84025== ==84025== Process terminating with default action of signal 4 (SIGILL) ==84025== Illegal opcode at address 0x10B06D ==84025== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84025== by 0x10B06D: main (tool_main.c:234) === End of file valgrind174 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/8/valgrind176 ../src/curl -q --output log/8/curl176.out --include --trace-ascii log/8/trace176 --trace-time http://127.0.0.1:33791/176 -u auser:apasswd --ntlm -d "junkelijunk" > log/8/stdout176 2> log/8/stderr176 176: 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 176 === Start of file server.cmd Testnum 176 === End of file server.cmd === Start of file valgrind176 ==84068== ==84068== Process terminating with default action of signal 4 (SIGILL) ==84068== Illegal opcode at address 0x10B06D ==84068== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84068== by 0x10B06D: 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/11/valgrind177 ../src/curl -q --output log/11/curl177.out --include --trace-ascii log/11/trace177 --trace-time http://127.0.0.1:35843/177 -u auser:apasswd --digest -d "junkelijunk" > log/11/stdout177 2> log/11/stderr177 177: 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 177 === Start of file server.cmd Testnum 177 === End of file server.cmd === Start of file valgrind177 ==84176== ==84176== Process terminating with default action of signal 4 (SIGILL) ==84176== Illegal opcode at address 0x10B06D ==84176== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84176== by 0x10B06D: 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/2/valgrind178 ../src/curl -q --output log/2/curl178.out --include --trace-ascii log/2/trace178 --trace-time http://127.0.0.1:44205/178 > log/2/stdout178 2> log/2/stderr178 178: 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 178 === Start of file server.cmd Testnum 178 === End of file server.cmd === Start of file valgrind178 ==84228== ==84228== Process terminating with default action of signal 4 (SIGILL) ==84228== Illegal opcode at address 0x10B06D ==84228== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84228== by 0x10B06D: main (tool_main.c:234) === End of file valgrind178 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/12/valgrind180 ../src/curl -q --output log/12/curl180.out --include --trace-ascii log/12/trace180 --trace-time http://127.0.0.1:44175/we/want/180 -T log/12/test180.txt --http1.0 > log/12/stdout180 2> log/12/stderr180 180: 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 180 === Start of file server.cmd Testnum 180 === End of file server.cmd === Start of file test180.txt Weird file to upload for testing the PUT feature === End of file test180.txt === Start of file valgrind180 ==84325== ==84325== Process terminating with default action of signal 4 (SIGILL) ==84325== Illegal opcode at address 0x10B06D ==84325== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84325== by 0x10B06D: main (tool_main.c:234) === End of file valgrind180 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/4/valgrind179 ../src/curl -q --output log/4/curl179.out --include --trace-ascii log/4/trace179 --trace-time http://supertrooper.fake/c/179 -b log/4/injar179 -x 127.0.0.1:41947 > log/4/stdout179 2> log/4/stderr179 179: 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 179 === 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 valgrind179 ==84276== ==84276== Process terminating with default action of signal 4 (SIGILL) ==84276== Illegal opcode at address 0x10B06D ==84276== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84276== by 0x10B06D: main (tool_main.c:234) === End of file valgrind179 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/1/valgrind181 ../src/curl -q --output log/1/curl181.out --include --trace-ascii log/1/trace181 --trace-time http://127.0.0.1:39283/we/want/181 --data-binary @log/1/test181.txt --http1.0 > log/1/stdout181 2> log/1/stderr181 181: 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 181 === Start of file server.cmd Testnum 181 === End of file server.cmd === Start of file test181.txt Weird file to upload for testing the POST feature === End of file test181.txt === Start of file valgrind181 ==84368== ==84368== Process terminating with default action of signal 4 (SIGILL) ==84368== Illegal opcode at address 0x10B06D ==84368== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84368== by 0x10B06D: 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/3/valgrind185 ../src/curl -q --output log/3/curl185.out --include --trace-ascii log/3/trace185 --trace-time http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:46313 > log/3/stdout185 2> log/3/stderr185 185: 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 185 === Start of file server.cmd Testnum 185 === End of file server.cmd === Start of file valgrind185 ==84441== ==84441== Process terminating with default action of signal 4 (SIGILL) ==84441== Illegal opcode at address CMD (33792): ../libtool --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/valgrind183 ../src/curl -q --output log/5/curl183.out --include --trace-ascii log/5/trace183 --trace-time http://deathstar.another.galaxy/183 http://a.galaxy.far.far.away/183 --proxy http://127.0.0.1:33519 > log/5/stdout183 2> log/5/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/8/valgrind188 ../src/curl -q --output log/8/curl188.out --include --trace-ascii log/8/trace188 --trace-time http://127.0.0.1:33791/188 -C 50 -L > log/8/stdout188 2> log/8/stderr188 CMD (33792): ../libtool --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/valgrind187 ../src/curl -q --output log/9/curl187.out --include --trace-ascii log/9/trace187 --trace-time http://127.0.0.1:40247?oh=what-weird=test/187 -L > log/9/stdout187 2> log/9/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/6/valgrind186 ../src/curl -q --output log/6/curl186.out --include --trace-ascii log/6/trace186 --trace-time http://127.0.0.1:41583/we/want/186 -F "name=daniel;type=moo/foo" -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/11/valgrind189 ../src/curl -q --output log/11/curl189.out --include --trace-ascii log/11/trace189 --trace-time http://127.0.0.1:35843/189 -C 50 -L > log/11/stdout189 2> log/11/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/valgrind190 ../src/curl -q --output log/2/curl190.out --include --trace-ascii log/2/trace190 --trace-time ftp://127.0.0.1:38659/path/to/file/190 -m 8 > log/2/stdout190 2> log/2/stderr190 * kill pid for ftp-ctrl => 80134 RUN: Process with pid 80133 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/valgrind191 ../src/curl -q --output log/12/curl191.out --include --trace-ascii log/12/trace191 --trace-time "ftp://use%3fr:pass%3fword@127.0.0.1:41005/191" > log/12/stdout191 2> log/12/stderr191 0x10B06D ==84441== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84441== by 0x10B06D: main (tool_main.c:234) === End of file valgrind185 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/7/valgrind184 ../src/curl -q --output log/7/curl184.out --include --trace-ascii log/7/trace184 --trace-time http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:35853 > log/7/stdout184 2> log/7/stderr184 184: 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 184 === Start of file server.cmd Testnum 184 === End of file server.cmd === Start of file valgrind184 ==84418== ==84418== Process terminating with default action of signal 4 (SIGILL) ==84418== Illegal opcode at address 0x10B06D ==84418== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84418== by 0x10B06D: main (tool_main.c:234) === End of file valgrind184 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/10/valgrind182 ../src/curl -q --output log/10/curl182.out --include --trace-ascii log/10/trace182 --trace-time ftp://127.0.0.1:33661/182 > log/10/stdout182 2> log/10/stderr182 182: 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 182 === Start of file server.cmd Testnum 182 === End of file server.cmd === Start of file valgrind182 ==84366== ==84366== Process terminating with default action of signal 4 (SIGILL) ==84366== Illegal opcode at address 0x10B06D ==84366== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84366== by 0x10B06D: main (tool_main.c:234) === End of file valgrind182 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/5/valgrind183 ../src/curl -q --output log/5/curl183.out --include --trace-ascii log/5/trace183 --trace-time http://deathstar.another.galaxy/183 http://a.galaxy.far.far.away/183 --proxy http://127.0.0.1:33519 > log/5/stdout183 2> log/5/stderr183 183: 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 183 === Start of file server.cmd Testnum 183 === End of file server.cmd === Start of file valgrind183 ==84374== ==84374== Process terminating with default action of signal 4 (SIGILL) ==84374== Illegal opcode at address 0x10B06D ==84374== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84374== by 0x10B06D: main (tool_main.c:234) === End of file valgrind183 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/8/valgrind188 ../src/curl -q --output log/8/curl188.out --include --trace-ascii log/8/trace188 --trace-time http://127.0.0.1:33791/188 -C 50 -L > log/8/stdout188 2> log/8/stderr188 188: 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 188 === Start of file server.cmd Testnum 188 === End of file server.cmd === Start of file valgrind188 ==84640== ==84640== Process terminating with default action of signal 4 (SIGILL) ==84640== Illegal opcode at address 0x10B06D ==84640== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84640== by 0x10B06D: main (tool_main.c:234) === End of file valgrind188 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-time http://127.0.0.1:41583/we/want/186 -F "name=daniel;type=moo/foo" -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 server.cmd Testnum 186 === End of file server.cmd === Start of file valgrind186 ==84624== ==84624== Process terminating with default action of signal 4 (SIGILL) ==84624== Illegal opcode at address 0x10B06D ==84624== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84624== by 0x10B06D: main (tool_main.c:234) === End of file valgrind186 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/9/valgrind187 ../src/curl -q --output log/9/curl187.out --include --trace-ascii log/9/trace187 --trace-time http://127.0.0.1:40247?oh=what-weird=test/187 -L > log/9/stdout187 2> log/9/stderr187 187: 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 187 === Start of file server.cmd Testnum 187 === End of file server.cmd === Start of file valgrind187 ==84636== ==84636== Process terminating with default action of signal 4 (SIGILL) ==84636== Illegal opcode at address 0x10B06D ==84636== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84636== by 0x10B06D: main (tool_main.c:234) === End of file valgrind187 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/11/valgrind189 ../src/curl -q --output log/11/curl189.out --include --trace-ascii log/11/trace189 --trace-time http://127.0.0.1:35843/189 -C 50 -L > log/11/stdout189 2> log/11/stderr189 189: 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 189 === Start of file server.cmd Testnum 189 === End of file server.cmd === Start of file valgrind189 ==84773== ==84773== Process terminating with default action of signal 4 (SIGILL) ==84773== Illegal opcode at address 0x10B06D ==84773== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84773== by 0x10B06D: main (tool_main.c:234) === End of file valgrind189 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/12/valgrind191 ../src/curl -q --output log/12/curl191.out --include --trace-ascii log/12/trace191 --trace-time "ftp://use%3fr:pass%3fword@127.0.0.1:41005/191" > log/12/stdout191 2> log/12/stderr191 191: 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 191 === Start of file server.cmd Testnum 191 === End of file server.cmd === Start of file valgrind191 ==84873== ==84873== Process terminating with default action of signal 4 (SIGILL) ==84873== Illegal opcode at address 0x10B06D ==84873== at CMD (33792): ../libtool --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/valgrind192 ../src/curl -q --include --trace-ascii log/4/trace192 --trace-time http://127.0.0.1:41947/192 -w "%{num_connects}\n" > log/4/stdout192 2> log/4/stderr192 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84873== by 0x10B06D: main (tool_main.c:234) === End of file valgrind191 CMD (33792): ../libtool --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/valgrind195 ../src/curl -q --output log/7/curl195.out --include --trace-ascii log/7/trace195 --trace-time ftp://127.0.0.1:45903/195 > log/7/stdout195 2> log/7/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/1/valgrind193 ../src/curl -q --include --trace-ascii log/1/trace193 --trace-time http://127.0.0.1:39283/193 -w "%{num_connects}\n" -L > log/1/stdout193 2> log/1/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/4/valgrind192 ../src/curl -q --include --trace-ascii log/4/trace192 --trace-time http://127.0.0.1:41947/192 -w "%{num_connects}\n" > log/4/stdout192 2> log/4/stderr192 192: stdout FAILED: --- log/4/check-expected 2024-05-23 11:15:55.389881591 +0200 +++ log/4/check-generated 2024-05-23 11:15:55.389881591 +0200 @@ -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/4/ 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 server.cmd Testnum 192 === End of file server.cmd === Start of file valgrind192 ==84904== ==84904== Process terminating with default action of signal 4 (SIGILL) ==84904== Illegal opcode at address 0x10B06D ==84904== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84904== by 0x10B06D: main (tool_main.c:234) === End of file valgrind192 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/7/valgrind195 ../src/curl -q --output log/7/curl195.out --include --trace-ascii log/7/trace195 --trace-time ftp://127.0.0.1:45903/195 > log/7/stdout195 2> log/7/stderr195 195: 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 195 === Start of file server.cmd REPLY PASS 530 temporarily not available Testnum 195 === End of file server.cmd === Start of file valgrind195 ==84967== ==84967== Process terminating with default action of signal 4 (SIGILL) ==84967== Illegal opcode at address 0x10B06D ==84967== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84967== by 0x10B06D: main (tool_main.c:234) === End of file valgrind195 CMD (33792): ../libtool --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/valgrind197 ../src/curl -q --include --trace-ascii log/5/trace197 --trace-time http://127.0.0.1:33519/197 --retry 1000 > log/5/stdout197 2> log/5/stderr197 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/1/valgrind193 ../src/curl -q --include --trace-ascii log/1/trace193 --trace-time http://127.0.0.1:39283/193 -w "%{num_connects}\n" -L > log/1/stdout193 2> log/1/stderr193 193: stdout FAILED: --- log/1/check-expected 2024-05-23 11:15:55.436549213 +0200 +++ log/1/check-generated 2024-05-23 11:15:55.436549213 +0200 @@ -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/1/ 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 server.cmd Testnum 193 === End of file server.cmd === Start of file valgrind193 ==84963== ==84963== Process terminating with default action of signal 4 (SIGILL) ==84963== Illegal opcode at address 0x10B06D ==84963== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84963== by 0x10B06D: main (tool_main.c:234) === End of file valgrind193 CMD (33792): ../libtool --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/valgrind194 ../src/curl -q --output log/3/curl194.out --include --trace-ascii log/3/trace194 --trace-time http://127.0.0.1:46313/want/194 -C 87 --fail > log/3/stdout194 2> log/3/stderr194 CMD (33792): ../libtool --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/valgrind196 ../src/curl -q --output log/10/curl196.out --include --trace-ascii log/10/trace196 --trace-time ftp://127.0.0.1:33661/196 --retry 1 > log/10/stdout196 2> log/10/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/9/valgrind200 ../src/curl -q --output log/9/curl200.out --trace-ascii log/9/trace200 --trace-time file://localhost/startdir/src/build-curl/tests/log/9/test200.txt > log/9/stdout200 2> log/9/stderr200 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/5/valgrind197 ../src/curl -q --include --trace-ascii log/5/trace197 --trace-time http://127.0.0.1:33519/197 --retry 1000 > log/5/stdout197 2> log/5/stderr197 197: stdout FAILED: --- log/5/check-expected 2024-05-23 11:15:55.456549626 +0200 +++ log/5/check-generated 2024-05-23 11:15:55.456549626 +0200 @@ -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/5/ 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 server.cmd Testnum 197 === End of file server.cmd === Start of file valgrind197 ==84997== ==84997== Process terminating with default action of signal 4 (SIGILL) ==84997== Illegal opcode at address 0x10B06D ==84997== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84997== by 0x10B06D: main (tool_main.c:234) === End of file valgrind197 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/3/valgrind194 ../src/curl -q --output log/3/curl194.out --include --trace-ascii log/3/trace194 --trace-time http://127.0.0.1:46313/want/194 -C 87 --fail > log/3/stdout194 2> log/3/stderr194 194: 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 194 === Start of file server.cmd Testnum 194 === End of file server.cmd === Start of file valgrind194 ==84974== ==84974== Process terminating with default action of signal 4 (SIGILL) ==84974== Illegal opcode at address 0x10B06D ==84974== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84974== by 0x10B06D: main (tool_main.c:234) === End of file valgrind194 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/10/valgrind196 ../src/curl -q --output log/10/curl196.out --include --trace-ascii log/10/trace196 --trace-time ftp://127.0.0.1:33661/196 --retry 1 > log/10/stdout196 2> log/10/stderr196 196: 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 196 === Start of file server.cmd REPLY PASS 430 temporarily not available Testnum 196 === End of file server.cmd === Start of file valgrind196 ==84971== ==84971== Process terminating with default action of signal 4 (SIGILL) ==84971== Illegal opcode at address 0x10B06D ==84971== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84971== by 0x10B06D: 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/8/valgrind198 ../src/curl -q --output log/8/curl198.out --include --trace-ascii log/8/trace198 --trace-time http://127.0.0.1:33791/198 --retry 1000 > log/8/stdout198 2> log/8/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/6/valgrind199 ../src/curl -q --output log/6/curl199.out --include --trace-ascii log/6/trace199 --trace-time -d "foo=moo&moo=poo" "http://127.0.0.1:41583/{199,199}" -G > log/6/stdout199 2> log/6/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/11/valgrind201 ../src/curl -q --output log/11/curl201.out --include --trace-ascii log/11/trace201 --trace-time file://localhost//startdir/src/build-curl/tests/log/11/non-existent-file.txt > log/11/stdout201 2> log/11/stderr201 CMD (33792): ../libtool --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/valgrind202 ../src/curl -q --trace-ascii log/12/trace202 --trace-time file://localhost/startdir/src/build-curl/tests/log/12/test202.txt FILE://localhost/startdir/src/build-curl/tests/log/12/test202.txt > log/12/stdout202 2> log/12/stderr202 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/9/valgrind200 ../src/curl -q --output log/9/curl200.out --trace-ascii log/9/trace200 --trace-time file://localhost/startdir/src/build-curl/tests/log/9/test200.txt > log/9/stdout200 2> log/9/stderr200 200: data FAILED: --- log/9/check-expected 2024-05-23 11:15:55.596552498 +0200 +++ log/9/check-generated 2024-05-23 11:15:55.596552498 +0200 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/9/ 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 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 ==85212== ==85212== Process terminating with default action of signal 4 (SIGILL) ==85212== Illegal opcode at address 0x10B06D ==85212== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85212== by 0x10B06D: 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/8/valgrind198 ../src/curl -q --output log/8/curl198.out --include --trace-ascii log/8/trace198 --trace-time http://127.0.0.1:33791/198 --retry 1000 > log/8/stdout198 2> log/8/stderr198 198: 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 198 === Start of file server.cmd Testnum 198 === End of file server.cmd === Start of file valgrind198 ==85207== ==85207== Process terminating with default action of signal 4 (SIGILL) ==85207== Illegal opcode at address 0x10B06D ==85207== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85207== by 0x10B06D: main (tool_main.c:234) === End of file valgrind198 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/6/valgrind199 ../src/curl -q --output log/6/curl199.out --include --trace-ascii log/6/trace199 --trace-time -d "foo=moo&moo=poo" "http://127.0.0.1:41583/{199,199}" -G > log/6/stdout199 2> log/6/stderr199 199: 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 199 === Start of file server.cmd Testnum 199 === End of file server.cmd === Start of file valgrind199 ==85210== ==85210== Process terminating with default action of signal 4 (SIGILL) ==85210== Illegal opcode at address 0x10B06D ==85210== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85210== by 0x10B06D: main (tool_main.c:234) === End of file valgrind199 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/11/valgrind201 ../src/curl -q --output log/11/curl201.out --include --trace-ascii log/11/trace201 --trace-time file://localhost//startdir/src/build-curl/tests/log/11/non-existent-file.txt > log/11/stdout201 2> log/11/stderr201 curl returned 132, when expecting 37 201: exit FAILED == Contents of files in the log/11/ dir after test 201 === Start of file server.cmd Testnum 201 === End of file server.cmd === Start of file valgrind201 ==85357== ==85357== Process terminating with default action of signal 4 (SIGILL) ==85357== Illegal opcode at address 0x10B06D ==85357== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85357== by 0x10B06D: main (tool_main.c:234) === End of file valgrind201 CMD (33792): ../libtool --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/valgrind203 ../src/curl -q --output log/4/curl203.out --trace-ascii log/4/trace203 --trace-time file:/startdir/src/build-curl/tests/log/4/test203.txt > log/4/stdout203 2> log/4/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/12/valgrind202 ../src/curl -q --trace-ascii log/12/trace202 --trace-time file://localhost/startdir/src/build-curl/tests/log/12/test202.txt FILE://localhost/startdir/src/build-curl/tests/log/12/test202.txt > log/12/stdout202 2> log/12/stderr202 202: stdout FAILED: --- log/12/check-expected 2024-05-23 11:15:55.956559887 +0200 +++ log/12/check-generated 2024-05-23 11:15:55.956559887 +0200 @@ -1,2 +0,0 @@ -contents in a single file[LF] -contents in a single file[LF] == Contents of files in the log/12/ 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 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 ==85409== ==85409== Process terminating with default action of signal 4 (SIGILL) ==85409== Illegal opcode at address 0x10B06D ==85409== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85409== by 0x10B06D: 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/7/valgrind204 ../src/curl -q --output log/7/curl204.out --trace-ascii log/7/trace204 --trace-time file://localhost/startdir/src/build-curl/tests/log/7/result204.txt -T log/7/upload204.txt > log/7/stdout204 2> log/7/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/4/valgrind203 ../src/curl -q --output log/4/curl203.out --trace-ascii log/4/trace203 --trace-time file:/startdir/src/build-curl/tests/log/4/test203.txt > log/4/stdout203 2> log/4/stderr203 203: data FAILED: --- log/4/check-expected 2024-05-23 11:15:55.963226689 +0200 +++ log/4/check-generated 2024-05-23 11:15:55.963226689 +0200 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/4/ 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 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 ==85410== ==85410== Process terminating with default action of signal 4 (SIGILL) ==85410== Illegal opcode at address 0x10B06D ==85410== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85410== by 0x10B06D: 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/1/valgrind205 ../src/curl -q --output log/1/curl205.out --trace-ascii log/1/trace205 --trace-time file://localhost//startdir/src/build-curl/tests/log/1/nonexisting/result205.txt -T log/1/upload205.txt > log/1/stdout205 2> log/1/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/3/valgrind207 ../src/curl -q --output log/3/curl207.out --include --trace-ascii log/3/trace207 --trace-time http://127.0.0.1:46313/207 > log/3/stdout207 2> log/3/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/5/valgrind206 ../src/curl -q --output log/5/curl206.out --include --trace-ascii log/5/trace206 --trace-time http://test.remote.haxx.se.206:8990/path/2060002 --proxy http://127.0.0.1:33519 --proxy-user silly:person --proxy-digest --proxytunnel > log/5/stdout206 2> log/5/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/10/valgrind208 ../src/curl -q --output log/10/curl208.out --include --trace-ascii log/10/trace208 --trace-time -x http://127.0.0.1:36145 ftp://daniel:mysecret@host.com/we/want/208 -T log/10/test208.txt > log/10/stdout208 2> log/10/stderr208 CMD (33792): ../libtool --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/valgrind209 ../src/curl -q --output log/9/curl209.out --include --trace-ascii log/9/trace209 --trace-time http://test.remote.example.com.209:40247/path/2090002 --proxy http://127.0.0.1:40247 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/9/stdout209 2> log/9/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/valgrind210 ../src/curl -q --output log/8/curl210.out --trace-ascii log/8/trace210 --trace-time ftp://127.0.0.1:43509/a/path/210 ftp://127.0.0.1:43509/a/path/210 > log/8/stdout210 2> log/8/stderr210 CMD (33792): ../libtool --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/valgrind211 ../src/curl -q --output log/6/curl211.out --include --trace-ascii log/6/trace211 --trace-time ftp://127.0.0.1:35103/a/path/211 ftp://127.0.0.1:35103/a/path/211 > log/6/stdout211 2> log/6/stderr211 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/7/valgrind204 ../src/curl -q --output log/7/curl204.out --trace-ascii log/7/trace204 --trace-time file://localhost/startdir/src/build-curl/tests/log/7/result204.txt -T log/7/upload204.txt > log/7/stdout204 2> log/7/stderr204 204: output (log/7/result204.txt) FAILED: --- log/7/check-expected 2024-05-23 11:15:56.003227511 +0200 +++ log/7/check-generated 2024-05-23 11:15:56.003227511 +0200 @@ -1,5 +0,0 @@ -data[LF] -in[LF] -file[LF] -to[LF] -write[LF] == Contents of files in the log/7/ 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 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 ==85503== ==85503== Process terminating with default action of signal 4 (SIGILL) ==85503== Illegal opcode at address 0x10B06D ==85503== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85503== by 0x10B06D: main (tool_main.c:234) === End of file valgrind204 test 0205...["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/1/valgrind205 ../src/curl -q --output log/1/curl205.out --trace-ascii log/1/trace205 --trace-time file://localhost//startdir/src/build-curl/tests/log/1/nonexisting/result205.txt -T log/1/upload205.txt > log/1/stdout205 2> log/1/stderr205 curl returned 132, when expecting 23 205: exit FAILED == Contents of files in the log/1/ dir after test 205 === 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 ==85504== ==85504== Process terminating with default action of signal 4 (SIGILL) ==85504== Illegal opcode at address 0x10B06D ==85504== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85504== by 0x10B06D: main (tool_main.c:234) === End of file valgrind205 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/3/valgrind207 ../src/curl -q --output log/3/curl207.out --include --trace-ascii log/3/trace207 --trace-time http://127.0.0.1:46313/207 > log/3/stdout207 2> log/3/stderr207 207: 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 207 === Start of file server.cmd Testnum 207 === End of file server.cmd === Start of file valgrind207 ==85562== ==85562== Process terminating with default action of signal 4 (SIGILL) ==85562== Illegal opcode at address 0x10B06D ==85562== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85562== by 0x10B06D: main (tool_main.c:234) === End of file valgrind207 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/5/valgrind206 ../src/curl -q --output log/5/curl206.out --include --trace-ascii log/5/trace206 --trace-time http://test.remote.haxx.se.206:8990/path/2060002 --proxy http://127.0.0.1:33519 --proxy-user silly:person --proxy-digest --proxytunnel > log/5/stdout206 2> log/5/stderr206 206: 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 206 === Start of file server.cmd connection-monitor auth_required Testnum 206 === End of file server.cmd === Start of file valgrind206 ==85573== ==85573== Process terminating with default action of signal 4 (SIGILL) ==85573== Illegal opcode at address 0x10B06D ==85573== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85573== by 0x10B06D: main (tool_main.c:234) === End of file valgrind206 test 0208...[HTTP PUT to a 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/10/valgrind208 ../src/curl -q --output log/10/curl208.out --include --trace-ascii log/10/trace208 --trace-time -x http://127.0.0.1:36145 ftp://daniel:mysecret@host.com/we/want/208 -T log/10/test208.txt > log/10/stdout208 2> log/10/stderr208 208: 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 208 === Start of file server.cmd Testnum 208 === End of file server.cmd === Start of file test208.txt Weird file to upload for testing the PUT feature === End of file test208.txt === Start of file valgrind208 ==85568== ==85568== Process terminating with default action of signal 4 (SIGILL) ==85568== Illegal opcode at address 0x10B06D ==85568== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85568== by 0x10B06D: main (tool_main.c:234) === End of file valgrind208 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/9/valgrind209 ../src/curl -q --output log/9/curl209.out --include --trace-ascii log/9/trace209 --trace-time http://test.remote.example.com.209:40247/path/2090002 --proxy http://127.0.0.1:40247 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/9/stdout209 2> log/9/stderr209 209: 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 209 === Start of file server.cmd Testnum 209 === End of file server.cmd === Start of file valgrind209 ==85767== ==85767== Process terminating with default action of signal 4 (SIGILL) ==85767== Illegal opcode at address 0x10B06D ==85767== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85767== by 0x10B06D: main (tool_main.c:234) === End of file valgrind209 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/8/valgrind210 ../src/curl -q --output log/8/curl210.out --trace-ascii log/8/trace210 --trace-time ftp://127.0.0.1:43509/a/path/210 ftp://127.0.0.1:43509/a/path/210 > log/8/stdout210 2> log/8/stderr210 210: 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 210 === Start of file server.cmd Testnum 210 === End of file server.cmd === Start of file valgrind210 ==85765== ==85765== Process terminating with default action of signal 4 (SIGILL) ==85765== Illegal opcode at address 0x10B06D ==85765== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85765== by 0x10B06D: main (tool_main.c:234) === End of file valgrind210 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/6/valgrind211 ../src/curl -q --output log/6/curl211.out --include --trace-ascii log/6/trace211 --trace-time ftp://127.0.0.1:35103/a/path/211 ftp://127.0.0.1:35103/a/path/211 > log/6/stdout211 2> log/6/stderr211 211: protocol FAILED! There was no content at all in the file 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/11/valgrind212 ../src/curl -q --output log/11/curl212.out --include --trace-ascii log/11/trace212 --trace-time ftp://127.0.0.1:36091/a/path/212 ftp://127.0.0.1:36091/a/path/212 -P - > log/11/stdout212 2> log/11/stderr212 CMD (33792): ../libtool --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/valgrind214 ../src/curl -q --output log/4/curl214.out --include --trace-ascii log/4/trace214 --trace-time "http://127.0.0.1:41947/\{\}\/214" > log/4/stdout214 2> log/4/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/12/valgrind213 ../src/curl -q --output log/12/curl213.out --include --trace-ascii log/12/trace213 --trace-time http://test.remote.example.com.213:44175/path/2130002 --proxy1.0 http://127.0.0.1:44175 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/12/stdout213 2> log/12/stderr213 CMD (33792): ../libtool --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/valgrind216 ../src/curl -q --output log/1/curl216.out --include --trace-ascii log/1/trace216 --trace-time -T log/1/upload.216 ftp://127.0.0.1:35701/a/path/216/ -T log/1/upload.216 ftp://127.0.0.1:35701/a/path/216/%2e%2eanotherup.216 > log/1/stdout216 2> log/1/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/7/valgrind215 ../src/curl -q --output log/7/curl215.out --include --trace-ascii log/7/trace215 --trace-time ftp://127.0.0.1:45903/a/path/215/ ftp://127.0.0.1:45903/a/path/215/ > log/7/stdout215 2> log/7/stderr215 CMD (33792): ../libtool --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/valgrind218 ../src/curl -q --output log/5/curl218.out --include --trace-ascii log/5/trace218 --trace-time -T log/5/file218 -H "Transfer-Encoding: chunked" http://127.0.0.1:33519/218 > log/5/stdout218 2> log/5/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/10/valgrind219 ../src/curl -q --output log/10/curl219.out --include --trace-ascii log/10/trace219 --trace-time -x foo://127.0.0.1:47/219 http://127.0.0.1:47/219 > log/10/stdout219 2> log/10/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/3/valgrind217 ../src/curl -q --include --trace-ascii log/3/trace217 --trace-time http://test.remote.example.com.217:46313/path/2170002 --proxy http://127.0.0.1:46313 --proxytunnel -w "%{http_code} %{http_connect}\n" > log/3/stdout217 2> log/3/stderr217 6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 211 === Start of file server.cmd REPLY EPSV 500 no such command Testnum 211 === End of file server.cmd === Start of file valgrind211 ==85813== ==85813== Process terminating with default action of signal 4 (SIGILL) ==85813== Illegal opcode at address 0x10B06D ==85813== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85813== by 0x10B06D: main (tool_main.c:234) === End of file valgrind211 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/11/valgrind212 ../src/curl -q --output log/11/curl212.out --include --trace-ascii log/11/trace212 --trace-time ftp://127.0.0.1:36091/a/path/212 ftp://127.0.0.1:36091/a/path/212 -P - > log/11/stdout212 2> log/11/stderr212 212: 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 212 === Start of file server.cmd REPLY EPRT 500 no such command Testnum 212 === End of file server.cmd === Start of file valgrind212 ==85913== ==85913== Process terminating with default action of signal 4 (SIGILL) ==85913== Illegal opcode at address 0x10B06D ==85913== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85913== by 0x10B06D: main (tool_main.c:234) === End of file valgrind212 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/4/valgrind214 ../src/curl -q --output log/4/curl214.out --include --trace-ascii log/4/trace214 --trace-time "http://127.0.0.1:41947/\{\}\/214" > log/4/stdout214 2> log/4/stderr214 214: 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 214 === Start of file server.cmd Testnum 214 === End of file server.cmd === Start of file valgrind214 ==85967== ==85967== Process terminating with default action of signal 4 (SIGILL) ==85967== Illegal opcode at address 0x10B06D ==85967== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85967== by 0x10B06D: 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/12/valgrind213 ../src/curl -q --output log/12/curl213.out --include --trace-ascii log/12/trace213 --trace-time http://test.remote.example.com.213:44175/path/2130002 --proxy1.0 http://127.0.0.1:44175 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/12/stdout213 2> log/12/stderr213 213: 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 213 === Start of file server.cmd Testnum 213 === End of file server.cmd === Start of file valgrind213 ==85966== ==85966== Process terminating with default action of signal 4 (SIGILL) ==85966== Illegal opcode at address 0x10B06D ==85966== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==85966== by 0x10B06D: main (tool_main.c:234) === End of file valgrind213 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/1/valgrind216 ../src/curl -q --output log/1/curl216.out --include --trace-ascii log/1/trace216 --trace-time -T log/1/upload.216 ftp://127.0.0.1:35701/a/path/216/ -T log/1/upload.216 ftp://127.0.0.1:35701/a/path/216/%2e%2eanotherup.216 > log/1/stdout216 2> log/1/stderr216 216: 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 216 === 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 ==86063== ==86063== Process terminating with default action of signal 4 (SIGILL) ==86063== Illegal opcode at address 0x10B06D ==86063== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86063== by 0x10B06D: main (tool_main.c:234) === End of file valgrind216 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 --num-callers=16 --log-file=log/7/valgrind215 ../src/curl -q --output log/7/curl215.out --include --trace-ascii log/7/trace215 --trace-time ftp://127.0.0.1:45903/a/path/215/ ftp://127.0.0.1:45903/a/path/215/ > log/7/stdout215 2> log/7/stderr215 215: 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 215 === Start of file server.cmd Testnum 215 === End of file server.cmd === Start of file valgrind215 ==86064== ==86064== Process terminating with default action of signal 4 (SIGILL) ==86064== Illegal opcode at address 0x10B06D ==86064== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86064== by 0x10B06D: main (tool_main.c:234) === End of file valgrind215 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/5/valgrind218 ../src/curl -q --output log/5/curl218.out --include --trace-ascii log/5/trace218 --trace-time -T log/5/file218 -H "Transfer-Encoding: chunked" http://127.0.0.1:33519/218 > log/5/stdout218 2> log/5/stderr218 218: 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 218 === Start of file file218 just some tiny teeny contents === End of file file218 === Start of file server.cmd Testnum 218 === End of file server.cmd === Start of file valgrind218 ==86158== ==86158== Process terminating with default action of signal 4 (SIGILL) ==86158== Illegal opcode at address 0x10B06D ==86158== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86158== by 0x10B06D: main (tool_main.c:234) === End of file valgrind218 * 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/10/valgrind219 ../src/curl -q --output log/10/curl219.out --include --trace-ascii log/10/trace219 --trace-time -x foo://127.0.0.1:47/219 http://127.0.0.1:47/219 > log/10/stdout219 2> log/10/stderr219 curl returned 132, when expecting 7 219: exit FAILED == Contents of files in the log/10/ dir after test 219 === Start of file server.cmd Testnum 219 === End of file server.cmd === Start of file valgrind219 ==86140== ==86140== Process terminating with default action of signal 4 (SIGILL) ==86140== Illegal opcode at address 0x10B06D ==86140== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86140== by 0x10B06D: 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/9/valgrind220 ../src/curl -q --output log/9/curl220.out --include --trace-ascii log/9/trace220 --trace-time http://127.0.0.1:40247/220 --compressed > log/9/stdout220 2> log/9/stderr220 CMD (33792): ../libtool --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/valgrind222 ../src/curl -q --output log/6/curl222.out --include --trace-ascii log/6/trace222 --trace-time http://127.0.0.1:41583/222 --compressed > log/6/stdout222 2> log/6/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/8/valgrind221 ../src/curl -q --output log/8/curl221.out --include --trace-ascii log/8/trace221 --trace-time http://127.0.0.1:33791/221 --compressed > log/8/stdout221 2> log/8/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/11/valgrind223 ../src/curl -q --output log/11/curl223.out --include --trace-ascii log/11/trace223 --trace-time http://127.0.0.1:35843/223 --compressed > log/11/stdout223 2> log/11/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/4/valgrind224 ../src/curl -q --output log/4/curl224.out --include --trace-ascii log/4/trace224 --trace-time http://127.0.0.1:41947/224 --compressed > log/4/stdout224 2> log/4/stderr224 CMD (33792): ../libtool --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/valgrind227 ../src/curl -q --output log/7/curl227.out --include --trace-ascii log/7/trace227 --trace-time ftp://127.0.0.1:45903/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/7/stdout227 2> log/7/stderr227 CMD (33792): ../libtool --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/valgrind229 ../src/curl -q --output log/10/curl229.out --include --trace-ascii log/10/trace229 --trace-time ftp://127.0.0.1:33661/229 --ftp-account "one count" > log/10/stdout229 2> log/10/stderr229 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/3/valgrind217 ../src/curl -q --include --trace-ascii log/3/trace217 --trace-time http://test.remote.example.com.217:46313/path/2170002 --proxy http://127.0.0.1:46313 --proxytunnel -w "%{http_code} %{http_connect}\n" > log/3/stdout217 2> log/3/stderr217 217: stdout FAILED: --- log/3/check-expected 2024-05-23 11:15:56.616573433 +0200 +++ log/3/check-generated 2024-05-23 11:15:56.616573433 +0200 @@ -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/3/ 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 server.cmd Testnum 217 === End of file server.cmd === Start of file valgrind217 ==86102== ==86102== Process terminating with default action of signal 4 (SIGILL) ==86102== Illegal opcode at address 0x10B06D ==86102== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86102== by 0x10B06D: main (tool_main.c:234) === End of file valgrind217 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/9/valgrind220 ../src/curl -q --output log/9/curl220.out --include --trace-ascii log/9/trace220 --trace-time http://127.0.0.1:40247/220 --compressed > log/9/stdout220 2> log/9/stderr220 220: 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 220 === Start of file server.cmd Testnum 220 === End of file server.cmd === Start of file valgrind220 ==86325== ==86325== Process terminating with default action of signal 4 (SIGILL) ==86325== Illegal opcode at address 0x10B06D ==86325== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86325== by 0x10B06D: main (tool_main.c:234) === End of file valgrind220 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/6/valgrind222 ../src/curl -q --output log/6/curl222.out --include --trace-ascii log/6/trace222 --trace-time http://127.0.0.1:41583/222 --compressed > log/6/stdout222 2> log/6/stderr222 222: 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 222 === Start of file server.cmd Testnum 222 === End of file server.cmd === Start of file valgrind222 ==86380== ==86380== Process terminating with default action of signal 4 (SIGILL) ==86380== Illegal opcode at address 0x10B06D ==86380== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86380== by 0x10B06D: main (tool_main.c:234) === End of file valgrind222 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/8/valgrind221 ../src/curl -q --output log/8/curl221.out --include --trace-ascii log/8/trace221 --trace-time http://127.0.0.1:33791/221 --compressed > log/8/stdout221 2> log/8/stderr221 221: 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 221 === Start of file server.cmd Testnum 221 === End of file server.cmd === Start of file valgrind221 ==86326== ==86326== Process terminating with default action of signal 4 (SIGILL) ==86326== Illegal opcode at address 0x10B06D ==86326== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86326== by 0x10B06D: main (tool_main.c:234) === End of file valgrind221 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/11/valgrind223 ../src/curl -q --output log/11/curl223.out --include --trace-ascii log/11/trace223 --trace-time http://127.0.0.1:35843/223 --compressed > log/11/stdout223 2> log/11/stderr223 223: 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 223 === Start of file server.cmd Testnum 223 === End of file server.cmd === Start of file valgrind223 ==86468== ==86468== Process terminating with default action of signal 4 (SIGILL) ==86468== Illegal opcode at address 0x10B06D ==86468== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86468== by 0x10B06D: main (tool_main.c:234) === End of file valgrind223 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/4/valgrind224 ../src/curl -q --output log/4/curl224.out --include --trace-ascii log/4/trace224 --trace-time http://127.0.0.1:41947/224 --compressed > log/4/stdout224 2> log/4/stderr224 224: 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 224 === Start of file server.cmd Testnum 224 === End of file server.cmd === Start of file valgrind224 ==86515== ==86515== Process terminating with default action of signal 4 (SIGILL) ==86515== Illegal opcode at address 0x10B06D ==86515== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86515== by 0x10B06D: main (tool_main.c:234) === End of file valgrind224 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/7/valgrind227 ../src/curl -q --output log/7/curl227.out --include --trace-ascii log/7/trace227 --trace-time ftp://127.0.0.1:45903/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/7/stdout227 2> log/7/stderr227 227: 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 227 === Start of file server.cmd REPLY EPSV 500 no such command REPLY FAIL 500 this might not be a failure Testnum 227 === End of file server.cmd === Start of file valgrind227 ==86625== ==86625== Process terminating with default action of signal 4 (SIGILL) ==86625== Illegal opcode at address 0x10B06D ==86625== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86625== by 0x10B06D: main (tool_main.c:234) === End of file valgrind227 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/10/valgrind229 ../src/curl -q --output log/10/curl229.out --include --trace-ascii log/10/trace229 --trace-time ftp://127.0.0.1:33661/229 --ftp-account "one count" > log/10/stdout229 2> log/10/stderr229 229: 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 229 === 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 ==86622== ==86622== Process terminating with default action of signal 4 (SIGILL) ==86622== Illegal opcode CMD (33792): ../libtool --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/valgrind226 ../src/curl -q --output log/1/curl226.out --include --trace-ascii log/1/trace226 --trace-time ftp://127.0.0.1:35701/226%0d > log/1/stdout226 2> log/1/stderr226 CMD (33792): ../libtool --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/valgrind228 ../src/curl -q --output log/5/curl228.out --include --trace-ascii log/5/trace228 --trace-time ftp://127.0.0.1:35155/228 --ftp-account "one count" > log/5/stdout228 2> log/5/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/3/valgrind230 ../src/curl -q --output log/3/curl230.out --include --trace-ascii log/3/trace230 --trace-time http://127.0.0.1:46313/230 --compressed > log/3/stdout230 2> log/3/stderr230 CMD (33792): ../libtool --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/valgrind225 ../src/curl -q --output log/12/curl225.out --include --trace-ascii log/12/trace225 --trace-time ftp://bad%0auser:passwd@127.0.0.1:41005/225%0a > log/12/stdout225 2> log/12/stderr225 CMD (33792): ../libtool --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/valgrind231 ../src/curl -q --output log/9/curl231.out --trace-ascii log/9/trace231 --trace-time file://localhost/startdir/src/build-curl/tests/log/9/test231.txt -C 10 > log/9/stdout231 2> log/9/stderr231 at address 0x10B06D ==86622== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86622== by 0x10B06D: main (tool_main.c:234) === End of file valgrind229 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/1/valgrind226 ../src/curl -q --output log/1/curl226.out --include --trace-ascii log/1/trace226 --trace-time ftp://127.0.0.1:35701/226%0d > log/1/stdout226 2> log/1/stderr226 curl returned 132, when expecting 3 226: exit FAILED == Contents of files in the log/1/ dir after test 226 === Start of file server.cmd Testnum 226 === End of file server.cmd === Start of file valgrind226 ==86553== ==86553== Process terminating with default action of signal 4 (SIGILL) ==86553== Illegal opcode at address 0x10B06D ==86553== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86553== by 0x10B06D: main (tool_main.c:234) === End of file valgrind226 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/3/valgrind230 ../src/curl -q --output log/3/curl230.out --include --trace-ascii log/3/trace230 --trace-time http://127.0.0.1:46313/230 --compressed > log/3/stdout230 2> log/3/stderr230 230: 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 230 === Start of file server.cmd Testnum 230 === End of file server.cmd === Start of file valgrind230 ==86742== ==86742== Process terminating with default action of signal 4 (SIGILL) ==86742== Illegal opcode at address 0x10B06D ==86742== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86742== by 0x10B06D: main (tool_main.c:234) === End of file valgrind230 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/5/valgrind228 ../src/curl -q --output log/5/curl228.out --include --trace-ascii log/5/trace228 --trace-time ftp://127.0.0.1:35155/228 --ftp-account "one count" > log/5/stdout228 2> log/5/stderr228 228: 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 228 === 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 ==86621== ==86621== Process terminating with default action of signal 4 (SIGILL) ==86621== Illegal opcode at address 0x10B06D ==86621== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86621== by 0x10B06D: main (tool_main.c:234) === End of file valgrind228 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/12/valgrind225 ../src/curl -q --output log/12/curl225.out --include --trace-ascii log/12/trace225 --trace-time ftp://bad%0auser:passwd@127.0.0.1:41005/225%0a > log/12/stdout225 2> log/12/stderr225 curl returned 132, when expecting 3 225: exit FAILED == Contents of files in the log/12/ dir after test 225 === Start of file server.cmd Testnum 225 === End of file server.cmd === Start of file valgrind225 ==86528== ==86528== Process terminating with default action of signal 4 (SIGILL) ==86528== Illegal opcode at address 0x10B06D ==86528== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86528== by 0x10B06D: main (tool_main.c:234) === End of file valgrind225 CMD (33792): ../libtool --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/valgrind232 ../src/curl -q --output log/6/curl232.out --include --trace-ascii log/6/trace232 --trace-time http://127.0.0.1:41583/232 --compressed > log/6/stdout232 2> log/6/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/8/valgrind233 ../src/curl -q --output log/8/curl233.out --include --trace-ascii log/8/trace233 --trace-time http://first.host.it.is/we/want/that/page/233 -x 127.0.0.1:33791 --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/11/valgrind234 ../src/curl -q --output log/11/curl234.out --include --trace-ascii log/11/trace234 --trace-time http://first.host.it.is/we/want/that/page/234 -x 127.0.0.1:35843 --user iam:myself --proxy-user testing:this --location-trusted > log/11/stdout234 2> log/11/stderr234 CMD (33792): ../libtool --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/valgrind236 ../src/curl -q --output log/7/curl236.out --include --trace-ascii log/7/trace236 --trace-time ftp://127.0.0.1:45903/236 -T log/7/file236.txt -C - > log/7/stdout236 2> log/7/stderr236 CMD (33792): ../libtool --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/valgrind237 ../src/curl -q --output log/10/curl237.out --include --trace-ascii log/10/trace237 --trace-time ftp://127.0.0.1:33661/237 --disable-epsv > log/10/stdout237 2> log/10/stderr237 CMD (33792): ../libtool --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/valgrind238 ../src/curl -q --output log/1/curl238.out --include --trace-ascii log/1/trace238 --trace-time ftp://127.0.0.1:35701/238 > log/1/stdout238 2> log/1/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/4/valgrind235 ../src/curl -q --output log/4/curl235.out --include --trace-ascii log/4/trace235 --trace-time ftp://127.0.0.1:36137/235 -T log/4/upload235 -C - > log/4/stdout235 2> log/4/stderr235 CMD (33792): ../libtool --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/valgrind239 ../src/curl -q --output log/3/curl239.out --include --trace-ascii log/3/trace239 --trace-time http://127.0.0.1:46313/239 --proxy http://127.0.0.1:46313 --proxy-user testuser:testpass --proxy-ntlm -d "postit" > log/3/stdout239 2> log/3/stderr239 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/9/valgrind231 ../src/curl -q --output log/9/curl231.out --trace-ascii log/9/trace231 --trace-time file://localhost/startdir/src/build-curl/tests/log/9/test231.txt -C 10 > log/9/stdout231 2> log/9/stderr231 231: data FAILED: --- log/9/check-expected 2024-05-23 11:15:57.346588417 +0200 +++ log/9/check-generated 2024-05-23 11:15:57.346588417 +0200 @@ -1,2 +0,0 @@ -B01234567[LF] -C01234567[LF] == Contents of files in the log/9/ dir after test 231 === Start of file check-expected B01234567[LF] C01234567[LF] === End of file check-expected === 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 ==86859== ==86859== Process terminating with default action of signal 4 (SIGILL) ==86859== Illegal opcode at address 0x10B06D ==86859== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86859== by 0x10B06D: main (tool_main.c:234) === End of file valgrind231 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-time http://first.host.it.is/we/want/that/page/233 -x 127.0.0.1:33791 --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 server.cmd Testnum 233 === End of file server.cmd === Start of file valgrind233 ==86885== ==86885== Process terminating with default action of signal 4 (SIGILL) ==86885== Illegal opcode at address 0x10B06D ==86885== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86885== by 0x10B06D: 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/6/valgrind232 ../src/curl -q --output log/6/curl232.out --include --trace-ascii log/6/trace232 --trace-time http://127.0.0.1:41583/232 --compressed > log/6/stdout232 2> log/6/stderr232 232: 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 232 === Start of file server.cmd Testnum 232 === End of file server.cmd === Start of file valgrind232 ==86911== ==86911== Process terminating with default action of signal 4 (SIGILL) ==86911== Illegal opcode at address 0x10B06D ==86911== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==86911== by 0x10B06D: main (tool_main.c:234) === End of file valgrind232 test 0234...[HTTP, proxy, site+proxy auth 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/11/valgrind234 ../src/curl -q --output log/11/curl234.out --include --trace-ascii log/11/trace234 --trace-time http://first.host.it.is/we/want/that/page/234 -x 127.0.0.1:35843 --user iam:myself --proxy-user testing:this --location-trusted > log/11/stdout234 2> log/11/stderr234 234: 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 234 === Start of file server.cmd Testnum 234 === End of file server.cmd === Start of file valgrind234 ==87008== ==87008== Process terminating with default action of signal 4 (SIGILL) ==87008== Illegal opcode at address 0x10B06D ==87008== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87008== by 0x10B06D: main (tool_main.c:234) === End of file valgrind234 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/7/valgrind236 ../src/curl -q --output log/7/curl236.out --include --trace-ascii log/7/trace236 --trace-time ftp://127.0.0.1:45903/236 -T log/7/file236.txt -C - > log/7/stdout236 2> log/7/stderr236 236: 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 236 === Start of file file236.txt Test data === End of file file236.txt === 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 ==87099== ==87099== Process terminating with default action of signal 4 (SIGILL) ==87099== Illegal opcode at address 0x10B06D ==87099== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87099== by 0x10B06D: 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/10/valgrind237 ../src/curl -q --output log/10/curl237.out --include --trace-ascii log/10/trace237 --trace-time ftp://127.0.0.1:33661/237 --disable-epsv > log/10/stdout237 2> log/10/stderr237 237: 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 237 === 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 ==87101== ==87101== Process terminating with default action of signal 4 (SIGILL) ==87101== Illegal opcode at address 0x10B06D ==87101== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87101== by 0x10B06D: 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/1/valgrind238 ../src/curl -q --output log/1/curl238.out --include --trace-ascii log/1/trace238 --trace-time ftp://127.0.0.1:35701/238 > log/1/stdout238 2> log/1/stderr238 238: 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 238 === Start of file server.cmd REPLY EPSV 229 Entering Passiv Mode (|||1000000|) Testnum 238 === End of file server.cmd === Start of file valgrind238 ==87100== ==87100== Process terminating with default action of signal 4 (SIGILL) ==87100== Illegal opcode at address 0x10B06D ==87100== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87100== by 0x10B06D: main (tool_main.c:234) === End of file valgrind238 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/4/valgrind235 ../src/curl -q --output log/4/curl235.out --include --trace-ascii log/4/trace235 --trace-time ftp://127.0.0.1:36137/235 -T log/4/upload235 -C - > log/4/stdout235 2> log/4/stderr235 235: protocol FAILED! TheCMD (33792): ../libtool --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/valgrind244 ../src/curl -q --output log/6/curl244.out --include --trace-ascii log/6/trace244 --trace-time --ftp-method nocwd ftp://127.0.0.1:35103/fir%23t/th%69rd/244/ > log/6/stdout244 2> log/6/stderr244 CMD (33792): ../libtool --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/valgrind243 ../src/curl -q --output log/8/curl243.out --include --trace-ascii log/8/trace243 --trace-time http://127.0.0.1:33791/243 --proxy http://127.0.0.1:33791 --proxy-user testuser:testpass --proxy-anyauth -d "postit" > log/8/stdout243 2> log/8/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/11/valgrind245 ../src/curl -q --output log/11/curl245.out --include --trace-ascii log/11/trace245 --trace-time http://127.0.0.1:35843/245 -u auser:apasswd --digest -d "junkelijunk" > log/11/stdout245 2> log/11/stderr245 CMD (33792): ../libtool --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/valgrind246 ../src/curl -q --output log/7/curl246.out --include --trace-ascii log/7/trace246 --trace-time http://127.0.0.1:35853/246 -u auser:apasswd --digest -d "junkelijunk" > log/7/stdout246 2> log/7/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/10/valgrind247 ../src/curl -q --output log/10/curl247.out --include --trace-ascii log/10/trace247 --trace-time ftp://127.0.0.1:33661/247 -T log/10/test247.txt -z "apr 1 2005 08:00:00" > log/10/stdout247 2> log/10/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/4/valgrind249 ../src/curl -q --output log/4/curl249.out --include --trace-ascii log/4/trace249 --trace-time http://127.0.0.1:41947/249 -z "dec 12 12:00:00 1999 GMT" > log/4/stdout249 2> log/4/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/3/valgrind250 ../src/curl -q --output log/3/curl250.out --include --trace log/3/trace250 --trace-time ftp://127.0.0.1:45493/ > log/3/stdout250 2> log/3/stderr250 re 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 235 === 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 ==87059== ==87059== Process terminating with default action of signal 4 (SIGILL) ==87059== Illegal opcode at address 0x10B06D ==87059== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87059== by 0x10B06D: main (tool_main.c:234) === End of file valgrind235 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/3/valgrind239 ../src/curl -q --output log/3/curl239.out --include --trace-ascii log/3/trace239 --trace-time http://127.0.0.1:46313/239 --proxy http://127.0.0.1:46313 --proxy-user testuser:testpass --proxy-ntlm -d "postit" > log/3/stdout239 2> log/3/stderr239 239: 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 239 === Start of file server.cmd Testnum 239 === End of file server.cmd === Start of file valgrind239 ==87132== ==87132== Process terminating with default action of signal 4 (SIGILL) ==87132== Illegal opcode at address 0x10B06D ==87132== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87132== by 0x10B06D: main (tool_main.c:234) === End of file valgrind239 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/6/valgrind244 ../src/curl -q --output log/6/curl244.out --include --trace-ascii log/6/trace244 --trace-time --ftp-method nocwd ftp://127.0.0.1:35103/fir%23t/th%69rd/244/ > log/6/stdout244 2> log/6/stderr244 244: 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 244 === Start of file server.cmd Testnum 244 === End of file server.cmd === Start of file valgrind244 ==87315== ==87315== Process terminating with default action of signal 4 (SIGILL) ==87315== Illegal opcode at address 0x10B06D ==87315== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87315== by 0x10B06D: main (tool_main.c:234) === End of file valgrind244 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/8/valgrind243 ../src/curl -q --output log/8/curl243.out --include --trace-ascii log/8/trace243 --trace-time http://127.0.0.1:33791/243 --proxy http://127.0.0.1:33791 --proxy-user testuser:testpass --proxy-anyauth -d "postit" > log/8/stdout243 2> log/8/stderr243 243: 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 243 === Start of file server.cmd Testnum 243 === End of file server.cmd === Start of file valgrind243 ==87327== ==87327== Process terminating with default action of signal 4 (SIGILL) ==87327== Illegal opcode at address 0x10B06D ==87327== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87327== by 0x10B06D: main (tool_main.c:234) === End of file valgrind243 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/11/valgrind245 ../src/curl -q --output log/11/curl245.out --include --trace-ascii log/11/trace245 --trace-time http://127.0.0.1:35843/245 -u auser:apasswd --digest -d "junkelijunk" > log/11/stdout245 2> log/11/stderr245 245: 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 245 === Start of file server.cmd Testnum 245 === End of file server.cmd === Start of file valgrind245 ==87415== ==87415== Process terminating with default action of signal 4 (SIGILL) ==87415== Illegal opcode at address 0x10B06D ==87415== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87415== by 0x10B06D: main (tool_main.c:234) === End of file valgrind245 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/7/valgrind246 ../src/curl -q --output log/7/curl246.out --include --trace-ascii log/7/trace246 --trace-time http://127.0.0.1:35853/246 -u auser:apasswd --digest -d "junkelijunk" > log/7/stdout246 2> log/7/stderr246 246: 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 246 === Start of file server.cmd Testnum 246 === End of file server.cmd === Start of file valgrind246 ==87467== ==87467== Process terminating with default action of signal 4 (SIGILL) ==87467== Illegal opcode at address 0x10B06D ==87467== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87467== by 0x10B06D: main (tool_main.c:234) === End of file valgrind246 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/10/valgrind247 ../src/curl -q --output log/10/curl247.out --include --trace-ascii log/10/trace247 --trace-time ftp://127.0.0.1:33661/247 -T log/10/test247.txt -z "apr 1 2005 08:00:00" > log/10/stdout247 2> log/10/stderr247 247: 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 247 === 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 ==87466== ==87466== Process terminating with default action of signal 4 (SIGILL) ==87466== Illegal opcode at address 0x10B06D ==87466== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87466== by 0x10B06D: main (tool_main.c:234) === End of file valgrind247 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/4/valgrind249 ../src/curl -q --output log/4/curl249.out --include --trace-ascii log/4/trace249 --trace-time http://127.0.0.1:41947/249 -z "dec 12 12:00:00 1999 GMT" > log/4/stdout249 2> log/4/stderr249 249: 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 249 === Start of file server.cmd Testnum 249 === End of file server.cmd === Start of file valgrind249 ==87548== ==87548== Process terminating with default action of signal 4 (SIGILL) ==87548== Illegal opcode at address 0x10B06D ==87548== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87548== by 0x10B06D: 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=16CMD (33792): ../libtool --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/valgrind248 ../src/curl -q --output log/1/curl248.out --include --trace-ascii log/1/trace248 --trace-time ftp://127.0.0.1:35701/248 -T log/1/test248.txt -z "apr 1 2005 08:00:00" > log/1/stdout248 2> log/1/stderr248 CMD (0): ../src/curl --max-time 13 --output log/5/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:33363/verifiedserver" 2>log/5/http_ipv6_verify.log CMD (0): ../src/curl --max-time 13 --output log/12/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:46599/verifiedserver" 2>log/12/http_ipv6_verify.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/valgrind251 ../src/curl -q --output log/6/curl251.out --include --trace-ascii log/6/trace251 --trace-time ftp://127.0.0.1:35103/ -P 127.0.0.1 > log/6/stdout251 2> log/6/stderr251 CMD (0): ../src/curl --max-time 13 --output log/9/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:40831/verifiedserver" 2>log/9/http_ipv6_verify.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/3/valgrind257 ../src/curl -q --output log/3/curl257.out --include --trace-ascii log/3/trace257 --trace-time http://supersite.com/want/257 -L -x http://127.0.0.1:46313 --netrc-optional --netrc-file log/3/netrc257 > log/3/stdout257 2> log/3/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/4/valgrind256 ../src/curl -q --include --trace-ascii log/4/trace256 --trace-time -x http://127.0.0.1:41947 http://127.0.0.1:41947/want/256 -C - --no-include -o log/4/fewl256.txt -U daniel:stenberg > log/4/stdout256 2> log/4/stderr256 CMD (33792): ../libtool --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-time -x http://127.0.0.1:39283 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/5/valgrind240 ../src/curl -q --output log/5/curl240.out --include --trace-ascii log/5/trace240 --trace-time -g "http://[::1]:33363/240" > log/5/stdout240 2> log/5/stderr240 --log-file=log/3/valgrind250 ../src/curl -q --output log/3/curl250.out --include --trace log/3/trace250 --trace-time ftp://127.0.0.1:45493/ > log/3/stdout250 2> log/3/stderr250 250: 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 250 === Start of file server.cmd SLOWDOWN Testnum 250 === End of file server.cmd === Start of file valgrind250 ==87552== ==87552== Process terminating with default action of signal 4 (SIGILL) ==87552== Illegal opcode at address 0x10B06D ==87552== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87552== by 0x10B06D: main (tool_main.c:234) === End of file valgrind250 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/1/valgrind248 ../src/curl -q --output log/1/curl248.out --include --trace-ascii log/1/trace248 --trace-time ftp://127.0.0.1:35701/248 -T log/1/test248.txt -z "apr 1 2005 08:00:00" > log/1/stdout248 2> log/1/stderr248 248: 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 248 === 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 ==87490== ==87490== Process terminating with default action of signal 4 (SIGILL) ==87490== Illegal opcode at address 0x10B06D ==87490== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87490== by 0x10B06D: main (tool_main.c:234) === End of file valgrind248 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/6/valgrind251 ../src/curl -q --output log/6/curl251.out --include --trace-ascii log/6/trace251 --trace-time ftp://127.0.0.1:35103/ -P 127.0.0.1 > log/6/stdout251 2> log/6/stderr251 251: 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 251 === Start of file server.cmd SLOWDOWN Testnum 251 === End of file server.cmd === Start of file valgrind251 ==87718== ==87718== Process terminating with default action of signal 4 (SIGILL) ==87718== Illegal opcode at address 0x10B06D ==87718== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87718== by 0x10B06D: main (tool_main.c:234) === End of file valgrind251 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/3/valgrind257 ../src/curl -q --output log/3/curl257.out --include --trace-ascii log/3/trace257 --trace-time http://supersite.com/want/257 -L -x http://127.0.0.1:46313 --netrc-optional --netrc-file log/3/netrc257 > log/3/stdout257 2> log/3/stderr257 257: 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 257 === 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 valgrind257 ==87808== ==87808== Process terminating with default action of signal 4 (SIGILL) ==87808== Illegal opcode at address 0x10B06D ==87808== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87808== by 0x10B06D: main (tool_main.c:234) === End of file valgrind257 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/4/valgrind256 ../src/curl -q --include --trace-ascii log/4/trace256 --trace-time -x http://127.0.0.1:41947 http://127.0.0.1:41947/want/256 -C - --no-include -o log/4/fewl256.txt -U daniel:stenberg > log/4/stdout256 2> log/4/stderr256 256: 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 256 === 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 server.cmd Testnum 256 === End of file server.cmd === Start of file valgrind256 ==87773== ==87773== Process terminating with default action of signal 4 (SIGILL) ==87773== Illegal opcode at address 0x10B06D ==87773== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87773== by 0x10B06D: main (tool_main.c:234) === End of file valgrind256 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-time -x http://127.0.0.1:39283 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 server.cmd Testnum 258 === End of file server.cmd === Start of file test258.txt foo- This is a moo- bar === End of file test258.txt === Start of file valgrind258 ==87878== ==87878== Process terminating with default action of signal 4 (SIGILL) ==87878== Illegal opcode at address 0x10B06D ==87878== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87878== by 0x10B06D: main (tool_main.c:234) === End of file valgrind258 startnew: perl -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: ../src/curl --max-time 13 --output log/5/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:33363/verifiedserver" 2>log/5/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 87085 port 33363 * pid http-ipv6 => 87085 87085 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/5/valgrind240 ../src/curl -q --output log/5/curl240.out --include --trace-ascii log/5/trace240 --trace-time -g "http://[::1]:33363/240" > log/5/stdout240 2> log/5/stderr240 240: 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 240 === Start of file http_ipv6_server.log 11:15:57.729265 Running HTTP IPv6 version on port 33363 11:15:57.729343 Wrote pid 87085 to log/5/server/http_ipv6_server.pid 11:15:57.729365 Wrote port 33363 to log/5/server/http_ipv6_server.port 11:15:58.729014 ====> Client connect 11:15:58.729028 accept_connection 3 returned 4 11:15:58.729037 accept_connection 3 returned 0 11:15:58.729047 Read 88 bytes 11:15:58.729057 Process 88 bytes request 11:15:58.729068 Got request: GET /verifiedserver HTTP/1.1 11:15:58.729073 Are-we-friendly question 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/12/valgrind241 ../src/curl -q --output log/12/curl241.out --include --trace-ascii log/12/trace241 --trace-time -g "http://ip6-localhost:46599/241" > log/12/stdout241 2> log/12/stderr241 CMD (33792): ../libtool --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/valgrind259 ../src/curl -q --output log/6/curl259.out --include --trace-ascii log/6/trace259 --trace-time -x http://127.0.0.1:41583 http://remotehost:54321/we/want/259 -F name=daniel -F tool=curl -F file=@log/6/test259.txt -U uuuser:pppassword --proxy-anyauth -H "Expect: 100-continue" > log/6/stdout259 2> log/6/stderr259 CMD (33792): ../libtool --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/valgrind242 ../src/curl -q --output log/9/curl242.out --include --trace-ascii log/9/trace242 --trace-time -g "http://foobar:barfoo@[::1]:40831/242" > log/9/stdout242 2> log/9/stderr242 ved 11:15:58.729088 Wrote request (88 bytes) input to log/5/server.input 11:15:58.729099 Identifying ourselves as friends 11:15:58.729139 Response sent (56 bytes) and written to log/5/server.response 11:15:58.729145 special request received, no persistency 11:15:58.729150 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:33363... * Connected to ::1 (::1) port 33363 > GET /verifiedserver HTTP/1.1 > Host: [::1]:33363 > User-Agent: curl/8.8.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: 87085 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 240 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 87085 === End of file server.response === Start of file valgrind240 ==87963== ==87963== Process terminating with default action of signal 4 (SIGILL) ==87963== Illegal opcode at address 0x10B06D ==87963== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87963== by 0x10B06D: main (tool_main.c:234) === End of file valgrind240 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/12/server/http_ipv6_server.pid" --logfile "log/12/http_ipv6_server.log" --logdir "log/12" --portfile log/12/server/http_ipv6_server.port --config log/12/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/12/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:46599/verifiedserver" 2>log/12/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 87096 port 46599 * pid http-ipv6 => 87096 87096 prechecked ./server/resolve --ipv6 ip6-localhost test 0241...[HTTP-IPv6 GET (using ip6-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/12/valgrind241 ../src/curl -q --output log/12/curl241.out --include --trace-ascii log/12/trace241 --trace-time -g "http://ip6-localhost:46599/241" > log/12/stdout241 2> log/12/stderr241 241: 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 241 === Start of file http_ipv6_server.log 11:15:57.734001 Running HTTP IPv6 version on port 46599 11:15:57.734087 Wrote pid 87096 to log/12/server/http_ipv6_server.pid 11:15:57.734111 Wrote port 46599 to log/12/server/http_ipv6_server.port 11:15:58.734399 ====> Client connect 11:15:58.734415 accept_connection 3 returned 4 11:15:58.734424 accept_connection 3 returned 0 11:15:58.734433 Read 88 bytes 11:15:58.734438 Process 88 bytes request 11:15:58.734451 Got request: GET /verifiedserver HTTP/1.1 11:15:58.734456 Are-we-friendly question received 11:15:58.734470 Wrote request (88 bytes) input to log/12/server.input 11:15:58.734484 Identifying ourselves as friends 11:15:58.734524 Response sent (56 bytes) and written to log/12/server.response 11:15:58.734530 special request received, no persistency 11:15:58.734535 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:46599... * Connected to ::1 (::1) port 46599 > GET /verifiedserver HTTP/1.1 > Host: [::1]:46599 > User-Agent: curl/8.8.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: 87096 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 241 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 87096 === End of file server.response === Start of file valgrind241 ==87986== ==87986== Process terminating with default action of signal 4 (SIGILL) ==87986== Illegal opcode at address 0x10B06D ==87986== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==87986== by 0x10B06D: main (tool_main.c:234) === End of file valgrind241 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/6/valgrind259 ../src/curl -q --output log/6/curl259.out --include --trace-ascii log/6/trace259 --trace-time -x http://127.0.0.1:41583 http://remotehost:54321/we/want/259 -F name=daniel -F tool=curl -F file=@log/6/test259.txt -U uuuser:pppassword --proxy-anyauth -H "Expect: 100-continue" > log/6/stdout259 2> log/6/stderr259 259: 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 259 === Start of file server.cmd Testnum 259 === End of file server.cmd === Start of file test259.txt foo- This is a moo- bar === End of file test259.txt === Start of file valgrind259 ==88062== ==88062== Process terminating with default action of signal 4 (SIGILL) ==88062== Illegal opcode at address 0x10B06D ==88062== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88062== by 0x10B06D: main (tool_main.c:234) === End of file valgrind259 startnew: perl -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: ../src/curl --max-time 13 --output log/9/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:40831/verifiedserver" 2>log/9/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 87313 port 40831 * pid http-ipv6 => 87313 87313 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/9/valgrind242 ../src/curl -q --output log/9/curl242.out --include --trace-ascii log/9/trace242 --trace-time -g "http://foobar:barfoo@[::1]:40831/242" > log/9/stdout242 2> log/9/stderr242 242: 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 242 === Start of file http_ipv6_server.log 11:15:57.890707 Running HTTP IPv6 version on port 40831 11:15:57.890783 Wrote pid 87313 to log/9/server/http_ipv6_server.pid 11:15:57.890806 Wrote port 40831 to log/9/server/http_ipv6_server.port 11:15:58.894656 ====> Client connect 11:15:58.894676 accept_connection 3 returned 4 11:15:58.894687 accept_connection 3 returned 0 11:15:58.894699 Read 88 bytes 11:15:58.894706 Process 88 bytes request 11:15:58.894724 Got request: GET /verifiedserver HTTP/1.1 11:15:58.894731 Are-we-friendly question received 11:15:58.894749 Wrote request (88 bytes) input to log/9/server.input 11:15:58.894766 Identifying ourselves as friends 11:15:58.894820 Response sent (56 bytes) and written to log/9/server.response 11:15:58.894828 special request received, no persistency 11:15:58.894834 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:40831... * Connected to ::1 (::1) port 40831 > GET /verifiedserver HTTP/1.1 > Host: [::1]:40831 > User-Agent: curl/8.8.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: 87313 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 242 === 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/3/valgrind260 ../src/curl -q --output log/3/curl260.out --include --trace-ascii log/3/trace260 --trace-time "http://127.0.0.1:46313?260" > log/3/stdout260 2> log/3/stderr260 CMD (33792): ../libtool --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/valgrind261 ../src/curl -q --output log/4/curl261.out --include --trace-ascii log/4/trace261 --trace-time ftp://127.0.0.1:36137/261 > log/4/stdout261 2> log/4/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/valgrind262 ../src/curl -q --output log/1/curl262.out --include --trace-ascii log/1/trace262 --trace-time http://127.0.0.1:39283/262 > log/1/stdout262 2> log/1/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/5/valgrind263 ../src/curl -q --output log/5/curl263.out --include --trace-ascii log/5/trace263 --trace-time -g -x "http://[::1]:33363" http://veryveryremotesite.com/263 > log/5/stdout263 2> log/5/stderr263 CMD (33792): ../libtool --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/valgrind264 ../src/curl -q --output log/12/curl264.out --include --trace-ascii log/12/trace264 --trace-time http://we.want.that.site.com/264 -x http://f%61ke:user@127.0.0.1:44175 > log/12/stdout264 2> log/12/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/6/valgrind265 ../src/curl -q --output log/6/curl265.out --include --trace-ascii log/6/trace265 --trace-time http://test.remote.example.com.265:41583/path/2650002 --proxy http://127.0.0.1:41583 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/6/stdout265 2> log/6/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/9/valgrind266 ../src/curl -q --output log/9/curl266.out --include --trace-ascii log/9/trace266 --trace-time http://127.0.0.1:40247/266 -D log/9/heads266 > log/9/stdout266 2> log/9/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/8/valgrind252 ../src/curl -q --output log/8/curl252.out --include --trace-ascii log/8/trace252 --trace-time -g "ftp://[::1]:33137/" > log/8/stdout252 2> log/8/stderr252 d of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 87313 === End of file server.response === Start of file valgrind242 ==88131== ==88131== Process terminating with default action of signal 4 (SIGILL) ==88131== Illegal opcode at address 0x10B06D ==88131== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88131== by 0x10B06D: main (tool_main.c:234) === End of file valgrind242 test 0260...[HTTP GET URL without slash but with questionmark] ../libtool --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/valgrind260 ../src/curl -q --output log/3/curl260.out --include --trace-ascii log/3/trace260 --trace-time "http://127.0.0.1:46313?260" > log/3/stdout260 2> log/3/stderr260 260: 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 260 === Start of file server.cmd Testnum 260 === End of file server.cmd === Start of file valgrind260 ==88181== ==88181== Process terminating with default action of signal 4 (SIGILL) ==88181== Illegal opcode at address 0x10B06D ==88181== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88181== by 0x10B06D: main (tool_main.c:234) === End of file valgrind260 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/4/valgrind261 ../src/curl -q --output log/4/curl261.out --include --trace-ascii log/4/trace261 --trace-time ftp://127.0.0.1:36137/261 > log/4/stdout261 2> log/4/stderr261 261: 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 261 === 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 ==88182== ==88182== Process terminating with default action of signal 4 (SIGILL) ==88182== Illegal opcode at address 0x10B06D ==88182== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88182== by 0x10B06D: main (tool_main.c:234) === End of file valgrind261 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/1/valgrind262 ../src/curl -q --output log/1/curl262.out --include --trace-ascii log/1/trace262 --trace-time http://127.0.0.1:39283/262 > log/1/stdout262 2> log/1/stderr262 262: 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 262 === Start of file server.cmd Testnum 262 === End of file server.cmd === Start of file valgrind262 ==88213== ==88213== Process terminating with default action of signal 4 (SIGILL) ==88213== Illegal opcode at address 0x10B06D ==88213== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88213== by 0x10B06D: main (tool_main.c:234) === End of file valgrind262 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/5/valgrind263 ../src/curl -q --output log/5/curl263.out --include --trace-ascii log/5/trace263 --trace-time -g -x "http://[::1]:33363" http://veryveryremotesite.com/263 > log/5/stdout263 2> log/5/stderr263 263: 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 263 === Start of file server.cmd Testnum 263 === End of file server.cmd === Start of file valgrind263 ==88260== ==88260== Process terminating with default action of signal 4 (SIGILL) ==88260== Illegal opcode at address 0x10B06D ==88260== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88260== by 0x10B06D: main (tool_main.c:234) === End of file valgrind263 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/12/valgrind264 ../src/curl -q --output log/12/curl264.out --include --trace-ascii log/12/trace264 --trace-time http://we.want.that.site.com/264 -x http://f%61ke:user@127.0.0.1:44175 > log/12/stdout264 2> log/12/stderr264 264: 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 264 === Start of file server.cmd Testnum 264 === End of file server.cmd === Start of file valgrind264 ==88370== ==88370== Process terminating with default action of signal 4 (SIGILL) ==88370== Illegal opcode at address 0x10B06D ==88370== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88370== by 0x10B06D: main (tool_main.c:234) === End of file valgrind264 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/6/valgrind265 ../src/curl -q --output log/6/curl265.out --include --trace-ascii log/6/trace265 --trace-time http://test.remote.example.com.265:41583/path/2650002 --proxy http://127.0.0.1:41583 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/6/stdout265 2> log/6/stderr265 265: 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 265 === Start of file server.cmd Testnum 265 === End of file server.cmd === Start of file valgrind265 ==88421== ==88421== Process terminating with default action of signal 4 (SIGILL) ==88421== Illegal opcode at address 0x10B06D ==88421== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88421== by 0x10B06D: 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/9/valgrind266 ../src/curl -q --output log/9/curl266.out --include --trace-ascii log/9/trace266 --trace-time http://127.0.0.1:40247/266 -D log/9/heads266 > log/9/stdout266 2> log/9/stderr266 266: 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 266 === Start of file server.cmd writedelay: 10 Testnum 266 === End of file server.cmd === Start of file valgrind266 ==88487== ==88487== Process terminating with default action of signal 4 (SIGILL) ==88487== Illegal opcode at address 0x10B06D ==88487== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88487== by 0x10B06D: main (tool_main.c:234) === End of file valgrind266 startnew: perl -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 33137 (log/8/server/ftp_ipv6_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://[::1]:33137/verifiedserver" 2>log/8/ftp_ipv6_verify.log RUN: Verifying our test ftp-ipv6 server took 0 seconds RUN: FTP-IPv6 server is PID 87719 port 33137 CMD (33792): ../libtool --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/valgrind267 ../src/curl -q --output log/3/curl267.out --include --trace-ascii log/3/trace267 --trace-time http://127.0.0.1:46313/267 -u testuser:testpass --ntlm -d "data" -H "Header1: yes" -H "Header2: no" > log/3/stdout267 2> log/3/stderr267 CMD (33792): ../libtool --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/valgrind269 ../src/curl -q --output log/1/curl269.out --include --trace-ascii log/1/trace269 --trace-time http://127.0.0.1:39283/269 --ignore-content-length > log/1/stdout269 2> log/1/stderr269 * pid ftp-ipv6 => 87719 87719 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/8/valgrind252 ../src/curl -q --output log/8/curl252.out --include --trace-ascii log/8/trace252 --trace-time -g "ftp://[::1]:33137/" > log/8/stdout252 2> log/8/stderr252 252: 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 252 === Start of file ftp_ipv6_server.log 11:15:57.879836 FTP server listens on port IPv6/33137 11:15:57.879905 logged pid 87719 in log/8/server/ftp_ipv6_server.pid 11:15:57.879919 Awaiting input 11:15:58.872631 ====> Client connect 11:15:58.872749 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:58.872974 < "USER anonymous" 11:15:58.872999 > "331 We are happy you popped in![CR][LF]" 11:15:58.873112 < "PASS ftp@example.com" 11:15:58.873128 > "230 Welcome you silly person[CR][LF]" 11:15:58.873230 < "PWD" 11:15:58.873250 > "257 "/" is current directory[CR][LF]" 11:15:58.873356 < "EPSV" 11:15:58.873374 ====> Passive DATA channel requested by client 11:15:58.873384 DATA sockfilt for passive data channel starting... 11:15:58.874666 DATA sockfilt for passive data channel started (pid 88490) 11:15:58.874750 DATA sockfilt for passive data channel listens on port 37087 11:15:58.874784 > "229 Entering Passive Mode (|||37087|)[LF]" 11:15:58.874796 Client has been notified that DATA conn will be accepted on port 37087 11:15:58.874997 Client connects to port 37087 11:15:58.875020 ====> Client established passive DATA connection on port 37087 11:15:58.875069 < "TYPE I" 11:15:58.875092 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:58.875221 < "SIZE verifiedserver" 11:15:58.875251 > "213 17[CR][LF]" 11:15:58.875381 < "RETR verifiedserver" 11:15:58.875418 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:58.875489 =====> Closing passive DATA connection... 11:15:58.875502 Server disconnects passive DATA connection 11:15:58.875608 Server disconnected passive DATA connection 11:15:58.875627 DATA sockfilt for passive data channel quits (pid 88490) 11:15:58.875782 DATA sockfilt for passive data channel quit (pid 88490) 11:15:58.875802 =====> Closed passive DATA connection 11:15:58.875824 > "226 File transfer complete[CR][LF]" 11:15:58.919075 < "QUIT" 11:15:58.919122 > "221 bye bye baby[CR][LF]" 11:15:58.919278 MAIN sockfilt said DISC 11:15:58.919302 ====> Client disconnected 11:15:58.919386 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 11:15:57.396954 Running IPv6 version 11:15:57.397035 Listening on port 33137 11:15:57.397063 Wrote pid 87757 to log/8/server/ftp_ipv6_sockctrl.pid 11:15:57.397083 Wrote port 33137 to log/8/server/ftp_ipv6_server.port 11:15:57.397097 Received PING (on stdin) 11:15:58.389893 ====> Client connect 11:15:58.390080 Received DATA (on stdin) 11:15:58.390089 > 160 bytes data, server => client 11:15:58.390098 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:58.390107 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:58.390114 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:58.390178 < 16 bytes data, client => server 11:15:58.390186 'USER anonymous\r\n' 11:15:58.390324 Received DATA (on stdin) 11:15:58.390332 > 33 bytes data, server => client 11:15:58.390340 '331 We are happy you popped in!\r\n' 11:15:58.390380 < 22 bytes data, client => server 11:15:58.390387 'PASS ftp@example.com\r\n' 11:15:58.390452 Received DATA (on stdin) 11:15:58.390459 > 30 bytes data, server => client 11:15:58.390467 '230 Welcome you silly person\r\n' 11:15:58.390501 < 5 bytes data, client => server 11:15:58.390508 'PWD\r\n' 11:15:58.390571 Received DATA (on stdin) 11:15:58.390579 > 30 bytes data, server => client 11:15:58.390586 '257 "/" is current directory\r\n' 11:15:58.390627 < 6 bytes data, client => server 11:15:58.390635 'EPSV\r\n' 11:15:58.392126 Received DATA (on stdin) 11:15:58.392137 > 38 bytes data, server => client 11:15:58.392146 '229 Entering Passive Mode (|||37087|)\n' 11:15:58.392256 < 8 bytes data, client => server 11:15:58.392270 'TYPE I\r\n' 11:15:58.392417 Received DATA (on stdin) 11:15:58.392426 > 33 bytes data, server => client 11:15:58.392434 '200 I modify TYPE as you wanted\r\n' 11:15:58.392479 < 21 bytes data, client => server 11:15:58.392488 'SIZE verifiedserver\r\n' 11:15:58.392577 Received DATA (on stdin) 11:15:58.392587 > 8 bytes data, server => client 11:15:58.392594 '213 17\r\n' 11:15:58.392639 < 21 bytes data, client => server 11:15:58.392648 'RETR verifiedserver\r\n' 11:15:58.392814 Received DATA (on stdin) 11:15:58.392831 > 29 bytes data, server => client 11:15:58.392840 '150 Binary junk (17 bytes).\r\n' 11:15:58.393152 Received DATA (on stdin) 11:15:58.393162 > 28 bytes data, server => client 11:15:58.393171 '226 File transfer complete\r\n' 11:15:58.436226 < 6 bytes data, client => server 11:15:58.436259 'QUIT\r\n' 11:15:58.436449 Received DATA (on stdin) 11:15:58.436457 > 18 bytes data, server => client 11:15:58.436464 '221 bye bye baby\r\n' 11:15:58.436549 ====> Client disconnect 11:15:58.436727 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 11:15:58.391754 Running IPv6 version 11:15:58.391809 Listening on port 37087 11:15:58.391836 Wrote pid 88490 to log/8/server/ftp_ipv6_sockdata.pid 11:15:58.391946 Received PING (on stdin) 11:15:58.392008 Received PORT (on stdin) 11:15:58.392285 ====> Client connect 11:15:58.392829 Received DATA (on stdin) 11:15:58.392841 > 17 bytes data, server => client 11:15:58.392849 'WE ROOLZ: 87719\r\n' 11:15:58.392875 Received DISC (on stdin) 11:15:58.392886 ====> Client forcibly disconnected 11:15:58.392958 Received QUIT (on stdin) 11:15:58.392967 quits 11:15:58.393000 ============> sockfilt quits === End of file ftp_ipv6_sockdata.log === Start of file server.cmd Testnum 252 === End of file server.cmd === Start of file valgrind252 ==88537== ==88537== Process terminating with default action of signal 4 (SIGILL) ==88537== Illegal opcode at address 0x10B06D ==88537== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88537== by 0x10B06D: main (tool_main.c:234) === End of file valgrind252 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/3/valgrind267 ../src/curl -q --output log/3/curl267.out --include --trace-ascii log/3/trace267 --trace-time http://127.0.0.1:46313/267 -u testuser:testpass --ntlm -d "data" -H "Header1: yes" -H "Header2: no" > log/3/stdout267 2> log/3/stderr267 267: 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 267 === Start of file server.cmd Testnum 267 === End of file server.cmd === Start of file valgrind267 ==88601== ==88601== Process terminating with default action of signal 4 (SIGILL) ==88601== Illegal opcode at address 0x10B06D ==88601== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88601== by 0x10B06D: main (tool_main.c:234) === End of file valgrind267 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/1/valgrind269 ../src/curl -q --output log/1/curl269.out --include --trace-ascii log/1/trace269 --trace-time http://127.0.0.1:39283/269 --ignore-content-length > log/1/stdout269 2> log/1/stderr269 269: protocol FAILED! There was no content at all in the file log/1/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/valgrind270 ../src/curl -q --output log/5/curl270.out --include --trace-ascii log/5/trace270 --trace-time ftp://127.0.0.1:35155/270 --ftp-skip-pasv-ip --disable-epsv > log/5/stdout270 2> log/5/stderr270 CMD (33792): ../libtool --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/valgrind253 ../src/curl -q --output log/11/curl253.out --include --trace-ascii log/11/trace253 --trace-time -g "ftp://[::1]:35065/" -P - > log/11/stdout253 2> log/11/stderr253 erver.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 269 === Start of file server.cmd Testnum 269 === End of file server.cmd === Start of file valgrind269 ==88659== ==88659== Process terminating with default action of signal 4 (SIGILL) ==88659== Illegal opcode at address 0x10B06D ==88659== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88659== by 0x10B06D: 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/5/valgrind270 ../src/curl -q --output log/5/curl270.out --include --trace-ascii log/5/trace270 --trace-time ftp://127.0.0.1:35155/270 --ftp-skip-pasv-ip --disable-epsv > log/5/stdout270 2> log/5/stderr270 270: 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 270 === Start of file server.cmd PASVBADIP Testnum 270 === End of file server.cmd === Start of file valgrind270 ==88668== ==88668== Process terminating with default action of signal 4 (SIGILL) ==88668== Illegal opcode at address 0x10B06D ==88668== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88668== by 0x10B06D: main (tool_main.c:234) === End of file valgrind270 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/11/server/ftp_ipv6_server.pid" --logfile "log/11/ftp_ipv6_server.log" --logdir "log/11" --portfile "log/11/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 35065 (log/11/server/ftp_ipv6_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://[::1]:35065/verifiedserver" 2>log/11/ftp_ipv6_verify.log RUN: Verifying our test ftp-ipv6 server took 1 seconds RUN: FTP-IPv6 server is PID 87768 port 35065 * pid ftp-ipv6 => 87768 87768 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/11/valgrind253 ../src/curl -q --output log/11/curl253.out --include --trace-ascii log/11/trace253 --trace-time -g "ftp://[::1]:35065/" -P - > log/11/stdout253 2> log/11/stderr253 253: 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 253 === Start of file ftp_ipv6_server.log 11:15:58.029307 FTP server listens on port IPv6/35065 11:15:58.029378 logged pid 87768 in log/11/server/ftp_ipv6_server.pid 11:15:58.029398 Awaiting input 11:15:59.018530 ====> Client connect 11:15:59.018689 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:59.018995 < "USER anonymous" 11:15:59.019032 > "331 We are happy you popped in![CR][LF]" 11:15:59.019159 < "PASS ftp@example.com" 11:15:59.019178 > "230 Welcome you silly person[CR][LF]" 11:15:59.019288 < "PWD" 11:15:59.019309 > "257 "/" is current directory[CR][LF]" 11:15:59.019419 < "EPSV" 11:15:59.019439 ====> Passive DATA channel requested by client 11:15:59.019449 DATA sockfilt for passive data channel starting... 11:15:59.021258 DATA sockfilt for passive data channel started (pid 88599) 11:15:59.021348 DATA sockfilt for passive data channel listens on port 35393 11:15:59.021379 > "229 Entering Passive Mode (|||35393|)[LF]" 11:15:59.021391 Client has been notified that DATA conn will be accepted on port 35393 11:15:59.021604 Client connects to port 35393 11:15:59.021625 ====> Client established passive DATA connection on port 35393 11:15:59.021722 < "TYPE I" 11:15:59.021744 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:59.021863 < "SIZE verifiedserver" 11:15:59.021887 > "213 17[CR][LF]" 11:15:59.021997 < "RETR verifiedserver" 11:15:59.022019 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:59.022087 =====> Closing passive DATA connection... 11:15:59.022105 Server disconnects passive DATA connection 11:15:59.022301 Server disconnected passive DATA connection 11:15:59.022321 DATA sockfilt for passive data channel quits (pid 88599) 11:15:59.022499 DATA sockfilt for passive data channel quit (pid 88599) 11:15:59.022517 =====> Closed passive DATA connection 11:15:59.022539 > "226 File transfer complete[CR][LF]" 11:15:59.069675 < "QUIT" 11:15:59.069716 > "221 bye bye baby[CR][LF]" 11:15:59.070112 MAIN sockfilt said DISC 11:15:59.070172 ====> Client disconnected 11:15:59.070211 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 11:15:58.546400 Running IPv6 version 11:15:58.546486 Listening on port 35065 11:15:58.546516 Wrote pid 87769 to log/11/server/ftp_ipv6_sockctrl.pid 11:15:58.546537 Wrote port 35065 to log/11/server/ftp_ipv6_server.port 11:15:58.546552 Received PING (on stdin) 11:15:59.535778 ====> Client connect 11:15:59.536030 Received DATA (on stdin) 11:15:59.536043 > 160 bytes data, server => client 11:15:59.536065 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:59.536073 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:59.536080 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:59.536155 < 16 bytes data, client => server 11:15:59.536164 'USER anonymous\r\n' 11:15:59.536360 Received DATA (on stdin) 11:15:59.536369 > 33 bytes data, server => client 11:15:59.536376 '331 We are happy you popped in!\r\n' 11:15:59.536420 < 22 bytes data, client => server 11:15:59.536428 'PASS ftp@example.com\r\n' 11:15:59.536507 Received DATA (on stdin) 11:15:59.536514 > 30 bytes data, server => client 11:15:59.536522 '230 Welcome you silly person\r\n' 11:15:59.536558 < 5 bytes data, client => server 11:15:59.536565 'PWD\r\n' 11:15:59.536631 Received DATA (on stdin) 11:15:59.536638 > 30 bytes data, server => client 11:15:59.536645 '257 "/" is current directory\r\n' 11:15:59.536690 < 6 bytes data, client => server 11:15:59.536697 'EPSV\r\n' 11:15:59.538720 Received DATA (on stdin) 11:15:59.538732 > 38 bytes data, server => client 11:15:59.538740 '229 Entering Passive Mode (|||35393|)\n' 11:15:59.538888 < 8 bytes data, client => server 11:15:59.538897 'TYPE I\r\n' 11:15:59.539068 Received DATA (on stdin) 11:15:59.539077 > 33 bytes data, server => client 11:15:59.539084 '200 I modify TYPE as you wanted\r\n' 11:15:59.539127 < 21 bytes data, client => server 11:15:59.539135 'SIZE verifiedserver\r\n' 11:15:59.539210 Received DATA (on stdin) 11:15:59.539218 > 8 bytes data, server => client 11:15:59.539225 '213 17\r\n' 11:15:59.539263 < 21 bytes data, client => server 11:15:59.539271 'RETR verifiedserver\r\n' 11:15:59.539432 Received DATA (on stdin) 11:15:59.539442 > 29 bytes data, server => client 11:15:59.539450 '150 Binary junk (17 bytes).\r\n' 11:15:59.539864 Received DATA (on stdin) 11:15:59.539874 > 28 bytes data, server => client 11:15:59.539882 '226 File transfer complete\r\n' 11:15:59.586889 < 6 bytes data, client => server 11:15:59.586910 'QUIT\r\n' 11:15:59.587042 Received DATA (on stdin) 11:15:59.587052 > 18 bytes data, server => client 11:15:59.587058 '221 bye bye baby\r\n' 11:15:59.587378 ====> Client disconnect 11:15:59.587543 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 11:15:59.538035 Running IPv6 version 11:15:59.538094 Listening on port 35393 11:15:59.538119 Wrote pid 88599 to log/11/server/ftp_ipv6_sockdata.pid 11:15:59.538531 Received PING (on stdin) 11:15:59.538602 Received PORT (on stdin) 11:15:59.538866 ====> Client connect 11:15:59.539474 Received DATA (on stdin) 11:15:59.539485 > 17 bytes data, server => client 11:15:59.539493 'WE ROOLZ: 87768\r\n' 11:15:59.539514 Received DISC (on stdin) 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/4/valgrind268 ../src/curl -q --output log/4/curl268.out --include --trace-ascii log/4/trace268 --trace-time http://127.0.0.1:41947/268 --variable hello@log/4/junk --expand-data {{hello:json}} > log/4/stdout268 2> log/4/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/7/valgrind254 ../src/curl -q --output log/7/curl254.out --include --trace-ascii log/7/trace254 --trace-time -g "ftp://[::1]:40769/" --disable-epsv > log/7/stdout254 2> log/7/stderr254 1:15:59.539527 ====> Client forcibly disconnected 11:15:59.539654 Received QUIT (on stdin) 11:15:59.539663 quits 11:15:59.539697 ============> sockfilt quits === End of file ftp_ipv6_sockdata.log === Start of file server.cmd Testnum 253 === End of file server.cmd === Start of file valgrind253 ==88667== ==88667== Process terminating with default action of signal 4 (SIGILL) ==88667== Illegal opcode at address 0x10B06D ==88667== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88667== by 0x10B06D: main (tool_main.c:234) === End of file valgrind253 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/4/valgrind268 ../src/curl -q --output log/4/curl268.out --include --trace-ascii log/4/trace268 --trace-time http://127.0.0.1:41947/268 --variable hello@log/4/junk --expand-data {{hello:json}} > log/4/stdout268 2> log/4/stderr268 268: 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 268 === Start of file junk “ === End of file junk === Start of file server.cmd Testnum 268 === End of file server.cmd === Start of file valgrind268 ==88647== ==88647== Process terminating with default action of signal 4 (SIGILL) ==88647== Illegal opcode at address 0x10B06D ==88647== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88647== by 0x10B06D: main (tool_main.c:234) === End of file valgrind268 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/7/server/ftp_ipv6_server.pid" --logfile "log/7/ftp_ipv6_server.log" --logdir "log/7" --portfile "log/7/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 40769 (log/7/server/ftp_ipv6_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://[::1]:40769/verifiedserver" 2>log/7/ftp_ipv6_verify.log RUN: Verifying our test ftp-ipv6 server took 0 seconds RUN: FTP-IPv6 server is PID 87770 port 40769 * pid ftp-ipv6 => 87770 87770 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/7/valgrind254 ../src/curl -q --output log/7/curl254.out --include --trace-ascii log/7/trace254 --trace-time -g "ftp://[::1]:40769/" --disable-epsv > log/7/stdout254 2> log/7/stderr254 254: 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 254 === Start of file ftp_ipv6_server.log 11:15:58.140277 FTP server listens on port IPv6/40769 11:15:58.140349 logged pid 87770 in log/7/server/ftp_ipv6_server.pid 11:15:58.140367 Awaiting input 11:15:59.141517 ====> Client connect 11:15:59.141668 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:59.141910 < "USER anonymous" 11:15:59.141940 > "331 We are happy you popped in![CR][LF]" 11:15:59.142083 < "PASS ftp@example.com" 11:15:59.142111 > "230 Welcome you silly person[CR][LF]" 11:15:59.142267 < "PWD" 11:15:59.142290 > "257 "/" is current directory[CR][LF]" 11:15:59.142407 < "EPSV" 11:15:59.142426 ====> Passive DATA channel requested by client 11:15:59.142436 DATA sockfilt for passive data channel starting... 11:15:59.143625 DATA sockfilt for passive data channel started (pid 88872) 11:15:59.143709 DATA sockfilt for passive data channel listens on port 42553 11:15:59.143742 > "229 Entering Passive Mode (|||42553|)[LF]" 11:15:59.143754 Client has been notified that DATA conn will be accepted on port 42553 11:15:59.143955 Client connects to port 42553 11:15:59.143976 ====> Client established passive DATA connection on port 42553 11:15:59.144028 < "TYPE I" 11:15:59.144047 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:59.144164 < "SIZE verifiedserver" 11:15:59.144190 > "213 17[CR][LF]" 11:15:59.144298 < "RETR verifiedserver" 11:15:59.144323 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:59.144394 =====> Closing passive DATA connection... 11:15:59.144406 Server disconnects passive DATA connection 11:15:59.144596 Server disconnected passive DATA connection 11:15:59.144618 DATA sockfilt for passive data channel quits (pid 88872) 11:15:59.144840 DATA sockfilt for passive data channel quit (pid 88872) 11:15:59.144858 =====> Closed passive DATA connection 11:15:59.144879 > "226 File transfer complete[CR][LF]" 11:15:59.189073 < "QUIT" 11:15:59.189123 > "221 bye bye baby[CR][LF]" 11:15:59.189887 MAIN sockfilt said DISC 11:15:59.189909 ====> Client disconnected 11:15:59.189956 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 11:15:58.657409 Running IPv6 version 11:15:58.657467 Listening on port 40769 11:15:58.657494 Wrote pid 87774 to log/7/server/ftp_ipv6_sockctrl.pid 11:15:58.657516 Wrote port 40769 to log/7/server/ftp_ipv6_server.port 11:15:58.657528 Received PING (on stdin) 11:15:59.658768 ====> Client connect 11:15:59.659000 Received DATA (on stdin) 11:15:59.659009 > 160 bytes data, server => client 11:15:59.659018 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:59.659027 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:59.659035 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:59.659106 < 16 bytes data, client => server 11:15:59.659115 'USER anonymous\r\n' 11:15:59.659267 Received DATA (on stdin) 11:15:59.659276 > 33 bytes data, server => client 11:15:59.659284 '331 We are happy you popped in!\r\n' 11:15:59.659328 < 22 bytes data, client => server 11:15:59.659337 'PASS ftp@example.com\r\n' 11:15:59.659465 Received DATA (on stdin) 11:15:59.659476 > 30 bytes data, server => client 11:15:59.659484 '230 Welcome you silly person\r\n' 11:15:59.659527 < 5 bytes data, client => server 11:15:59.659534 'PWD\r\n' 11:15:59.659613 Received DATA (on stdin) 11:15:59.659621 > 30 bytes data, server => client 11:15:59.659628 '257 "/" is current directory\r\n' 11:15:59.659674 < 6 bytes data, client => server 11:15:59.659682 'EPSV\r\n' 11:15:59.661084 Received DATA (on stdin) 11:15:59.661094 > 38 bytes data, server => client 11:15:59.661103 '229 Entering Passive Mode (|||42553|)\n' 11:15:59.661218 < 8 bytes data, client => server 11:15:59.661229 'TYPE I\r\n' 11:15:59.661370 Received DATA (on stdin) 11:15:59.661379 > 33 bytes data, server => client 11:15:59.661387 '200 I modify TYPE as you wanted\r\n' 11:15:59.661428 < 21 bytes data, client => server 11:15:59.661437 'SIZE verifiedserver\r\n' 11:15:59.661514 Received DATA (on stdin) 11:15:59.661522 > 8 bytes data, server => client 11:15:59.661529 '213 17\r\n' 11:15:59.661565 < 21 bytes data, client => server 11:15:59.661573 'RETR verifiedserver\r\n' 11:15:59.661733 Received DATA (on stdin) 11:15:59.661741 > 29 bytes data, server => client 11:15:59.661749 '150 Binary junk (17 bytes).\r\n' 11:15:59.662206 Received DATA (on stdin) 11:15:59.662215 > 28 bytes data, server => client 11:15:59.662223 '226 File transfer complete\r\n' 11:15:59.706255 < 6 bytes data, client => server 11:15:59.706282 'QUIT\r\n' 11:15:59.706452 Received DATA (on stdin) 11:15:59.706463 > 18 bytes data, server => client 11:15:59.706471 '221 bye bye baby\r\n' 11:15:59.707170 ====> Client disconnect 11:15:59.707278 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 11:15:59.660802 Running IPv6 version 11:15:59.660861 Listening on port 42553 11:15:59.660889 Wrote pid 88872 to log/7/server/ftp_ipv6_sockdata.pid 11:15:59.660904 Received PING (on stdin) 11:15:59.660967 Received PORT (on stdin) 11:15:59.661244 ====> Client connect 11:15:59.661773 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/10/valgrind255 ../src/curl -q --output log/10/curl255.out --include --trace-ascii log/10/trace255 --trace-time -g "ftp://[::1]:39477/" -P - --disable-eprt > log/10/stdout255 2> log/10/stderr255 CMD (33792): ../libtool --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/valgrind272 ../src/curl -q --output log/6/curl272.out --include --trace-ascii log/6/trace272 --trace-time ftp://127.0.0.1:35103/272 -z "2004 jan 1 12:12:12 UTC" > log/6/stdout272 2> log/6/stderr272 DATA (on stdin) 11:15:59.661783 > 17 bytes data, server => client 11:15:59.661791 'WE ROOLZ: 87770\r\n' 11:15:59.661813 Received DISC (on stdin) 11:15:59.661821 ====> Client forcibly disconnected 11:15:59.661954 Received QUIT (on stdin) 11:15:59.661963 quits 11:15:59.662045 ============> sockfilt quits === End of file ftp_ipv6_sockdata.log === Start of file server.cmd Testnum 254 === End of file server.cmd === Start of file valgrind254 ==88876== ==88876== Process terminating with default action of signal 4 (SIGILL) ==88876== Illegal opcode at address 0x10B06D ==88876== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88876== by 0x10B06D: main (tool_main.c:234) === End of file valgrind254 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/10/server/ftp_ipv6_server.pid" --logfile "log/10/ftp_ipv6_server.log" --logdir "log/10" --portfile "log/10/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 39477 (log/10/server/ftp_ipv6_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://[::1]:39477/verifiedserver" 2>log/10/ftp_ipv6_verify.log RUN: Verifying our test ftp-ipv6 server took 0 seconds RUN: FTP-IPv6 server is PID 87771 port 39477 * pid ftp-ipv6 => 87771 87771 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/10/valgrind255 ../src/curl -q --output log/10/curl255.out --include --trace-ascii log/10/trace255 --trace-time -g "ftp://[::1]:39477/" -P - --disable-eprt > log/10/stdout255 2> log/10/stderr255 255: 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 255 === Start of file ftp_ipv6_server.log 11:15:58.146405 FTP server listens on port IPv6/39477 11:15:58.146463 logged pid 87771 in log/10/server/ftp_ipv6_server.pid 11:15:58.146479 Awaiting input 11:15:59.146139 ====> Client connect 11:15:59.146274 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:15:59.146506 < "USER anonymous" 11:15:59.146531 > "331 We are happy you popped in![CR][LF]" 11:15:59.146649 < "PASS ftp@example.com" 11:15:59.146668 > "230 Welcome you silly person[CR][LF]" 11:15:59.146773 < "PWD" 11:15:59.146798 > "257 "/" is current directory[CR][LF]" 11:15:59.146906 < "EPSV" 11:15:59.146926 ====> Passive DATA channel requested by client 11:15:59.146936 DATA sockfilt for passive data channel starting... 11:15:59.148317 DATA sockfilt for passive data channel started (pid 88873) 11:15:59.148392 DATA sockfilt for passive data channel listens on port 44835 11:15:59.148422 > "229 Entering Passive Mode (|||44835|)[LF]" 11:15:59.148433 Client has been notified that DATA conn will be accepted on port 44835 11:15:59.148612 Client connects to port 44835 11:15:59.148635 ====> Client established passive DATA connection on port 44835 11:15:59.148682 < "TYPE I" 11:15:59.148702 > "200 I modify TYPE as you wanted[CR][LF]" 11:15:59.148829 < "SIZE verifiedserver" 11:15:59.148857 > "213 17[CR][LF]" 11:15:59.148965 < "RETR verifiedserver" 11:15:59.148988 > "150 Binary junk (17 bytes).[CR][LF]" 11:15:59.149045 =====> Closing passive DATA connection... 11:15:59.149057 Server disconnects passive DATA connection 11:15:59.149242 Server disconnected passive DATA connection 11:15:59.149261 DATA sockfilt for passive data channel quits (pid 88873) 11:15:59.149417 DATA sockfilt for passive data channel quit (pid 88873) 11:15:59.149432 =====> Closed passive DATA connection 11:15:59.149457 > "226 File transfer complete[CR][LF]" 11:15:59.193786 < "QUIT" 11:15:59.193827 > "221 bye bye baby[CR][LF]" 11:15:59.194609 MAIN sockfilt said DISC 11:15:59.194632 ====> Client disconnected 11:15:59.194676 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 11:15:58.663568 Running IPv6 version 11:15:58.663615 Listening on port 39477 11:15:58.663638 Wrote pid 87788 to log/10/server/ftp_ipv6_sockctrl.pid 11:15:58.663656 Wrote port 39477 to log/10/server/ftp_ipv6_server.port 11:15:58.663667 Received PING (on stdin) 11:15:59.663400 ====> Client connect 11:15:59.663608 Received DATA (on stdin) 11:15:59.663617 > 160 bytes data, server => client 11:15:59.663627 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:15:59.663639 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:15:59.663646 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:15:59.663706 < 16 bytes data, client => server 11:15:59.663714 'USER anonymous\r\n' 11:15:59.663857 Received DATA (on stdin) 11:15:59.663866 > 33 bytes data, server => client 11:15:59.663874 '331 We are happy you popped in!\r\n' 11:15:59.663915 < 22 bytes data, client => server 11:15:59.663923 'PASS ftp@example.com\r\n' 11:15:59.663992 Received DATA (on stdin) 11:15:59.664000 > 30 bytes data, server => client 11:15:59.664007 '230 Welcome you silly person\r\n' 11:15:59.664043 < 5 bytes data, client => server 11:15:59.664050 'PWD\r\n' 11:15:59.664119 Received DATA (on stdin) 11:15:59.664127 > 30 bytes data, server => client 11:15:59.664134 '257 "/" is current directory\r\n' 11:15:59.664177 < 6 bytes data, client => server 11:15:59.664184 'EPSV\r\n' 11:15:59.665761 Received DATA (on stdin) 11:15:59.665772 > 38 bytes data, server => client 11:15:59.665781 '229 Entering Passive Mode (|||44835|)\n' 11:15:59.665879 < 8 bytes data, client => server 11:15:59.665890 'TYPE I\r\n' 11:15:59.666025 Received DATA (on stdin) 11:15:59.666033 > 33 bytes data, server => client 11:15:59.666041 '200 I modify TYPE as you wanted\r\n' 11:15:59.666090 < 21 bytes data, client => server 11:15:59.666100 'SIZE verifiedserver\r\n' 11:15:59.666181 Received DATA (on stdin) 11:15:59.666189 > 8 bytes data, server => client 11:15:59.666196 '213 17\r\n' 11:15:59.666232 < 21 bytes data, client => server 11:15:59.666240 'RETR verifiedserver\r\n' 11:15:59.666382 Received DATA (on stdin) 11:15:59.666390 > 29 bytes data, server => client 11:15:59.666398 '150 Binary junk (17 bytes).\r\n' 11:15:59.666781 Received DATA (on stdin) 11:15:59.666791 > 28 bytes data, server => client 11:15:59.666799 '226 File transfer complete\r\n' 11:15:59.710971 < 6 bytes data, client => server 11:15:59.710993 'QUIT\r\n' 11:15:59.711257 Received DATA (on stdin) 11:15:59.711268 > 18 bytes data, server => client 11:15:59.711275 '221 bye bye baby\r\n' 11:15:59.711894 ====> Client disconnect 11:15:59.712003 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 11:15:59.665412 Running IPv6 version 11:15:59.665463 Listening on port 44835 11:15:59.665493 Wrote pid 88873 to log/10/server/ftp_ipv6_sockdata.pid 11:15:59.665601 Received PING (on stdin) 11:15:59.665656 Received PORT (on stdin) 11:15:59.665903 ====> Client connect 11:15:59.666432 Received DATA (on stdin) 11:15:59.666443 > 17 bytes data, server => client 11:15:59.666451 'WE ROOLZ: 87771\r\n' 11:15:59.666472 Received DISC (on stdin) 11:15:59.666480 ====> Client forcibly disconnected 11:15:59.666590 Received QUIT (on stdin) 11:15:59.666598 quits 11:15:59.666629 ============> sockfilt quits === End of file ftp_ipv6_sockdata.log === Start of file server.cmd Testnum 255 === End of file server.cmd === Start of file valgrind255 ==88880== ==88880== Process terminating with default action of signal 4 (SIGILL) ==88880== Illegal opcode at address 0x10B06D ==88880== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88880== by 0x10B06D: main (tool_main.c:234) === End of file valgrind255 test 0272...[FTP timed conditioned get file with identical time stamp] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --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/9/valgrind273 ../src/curl -q --output log/9/curl273.out --include --trace-ascii log/9/trace273 --trace-time http://127.0.0.1:40247/273 -u testuser:testpass --digest > log/9/stdout273 2> log/9/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/8/valgrind274 ../src/curl -q --output log/8/curl274.out --include --trace-ascii log/8/trace274 --trace-time http://127.0.0.1:33791/want/274 -L --max-redirs 0 > log/8/stdout274 2> log/8/stderr274 CMD (33792): ../libtool --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/valgrind275 ../src/curl -q --output log/3/curl275.out --include --trace-ascii log/3/trace275 --trace-time http://remotesite.com.275:46313/we/want/that/page/275 -p -x 127.0.0.1:45097 --user iam:myself --proxy-user youare:yourself http://remotesite.com.275:46313/we/want/that/page/275 > log/3/stdout275 2> log/3/stderr275 CMD (33792): ../libtool --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/valgrind279 ../src/curl -q --output log/4/curl279.out --include --trace-ascii log/4/trace279 --trace-time http://we.want.that.site.com/279 -x http://f%61ke@127.0.0.1:41947 > log/4/stdout279 2> log/4/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/valgrind278 ../src/curl -q --output log/11/curl278.out --include --trace-ascii log/11/trace278 --trace-time http://we.want.that.site.com/278 -x http://f%61ke:@127.0.0.1:35843 > log/11/stdout278 2> log/11/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-time "http://127.0.0.1:39283/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/5/valgrind277 ../src/curl -q --output log/5/curl277.out --include --trace-ascii log/5/trace277 --trace-time http://127.0.0.1:33519/want/277 -F name=daniel -H "Content-Type: text/info" > log/5/stdout277 2> log/5/stderr277 CMD (33792): ../libtool --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/valgrind280 ../src/curl -q --output log/7/curl280.out --include --trace-ascii log/7/trace280 --trace-time ftp://127.0.0.1:45903/280/ --ftp-alternative-to-user "USER replacement" > log/7/stdout280 2> log/7/stderr280 uppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind272 ../src/curl -q --output log/6/curl272.out --include --trace-ascii log/6/trace272 --trace-time ftp://127.0.0.1:35103/272 -z "2004 jan 1 12:12:12 UTC" > log/6/stdout272 2> log/6/stderr272 272: 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 272 === Start of file server.cmd Testnum 272 === End of file server.cmd === Start of file valgrind272 ==88975== ==88975== Process terminating with default action of signal 4 (SIGILL) ==88975== Illegal opcode at address 0x10B06D ==88975== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==88975== by 0x10B06D: main (tool_main.c:234) === End of file valgrind272 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/9/valgrind273 ../src/curl -q --output log/9/curl273.out --include --trace-ascii log/9/trace273 --trace-time http://127.0.0.1:40247/273 -u testuser:testpass --digest > log/9/stdout273 2> log/9/stderr273 273: 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 273 === Start of file server.cmd Testnum 273 === End of file server.cmd === Start of file valgrind273 ==89025== ==89025== Process terminating with default action of signal 4 (SIGILL) ==89025== Illegal opcode at address 0x10B06D ==89025== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89025== by 0x10B06D: main (tool_main.c:234) === End of file valgrind273 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/8/valgrind274 ../src/curl -q --output log/8/curl274.out --include --trace-ascii log/8/trace274 --trace-time http://127.0.0.1:33791/want/274 -L --max-redirs 0 > log/8/stdout274 2> log/8/stderr274 274: 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 274 === Start of file server.cmd Testnum 274 === End of file server.cmd === Start of file valgrind274 ==89044== ==89044== Process terminating with default action of signal 4 (SIGILL) ==89044== Illegal opcode at address 0x10B06D ==89044== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89044== by 0x10B06D: main (tool_main.c:234) === End of file valgrind274 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/3/valgrind275 ../src/curl -q --output log/3/curl275.out --include --trace-ascii log/3/trace275 --trace-time http://remotesite.com.275:46313/we/want/that/page/275 -p -x 127.0.0.1:45097 --user iam:myself --proxy-user youare:yourself http://remotesite.com.275:46313/we/want/that/page/275 > log/3/stdout275 2> log/3/stderr275 275: 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 275 === Start of file server.cmd Testnum 275 === End of file server.cmd === Start of file valgrind275 ==89126== ==89126== Process terminating with default action of signal 4 (SIGILL) ==89126== Illegal opcode at address 0x10B06D ==89126== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89126== by 0x10B06D: main (tool_main.c:234) === End of file valgrind275 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/4/valgrind279 ../src/curl -q --output log/4/curl279.out --include --trace-ascii log/4/trace279 --trace-time http://we.want.that.site.com/279 -x http://f%61ke@127.0.0.1:41947 > log/4/stdout279 2> log/4/stderr279 279: 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 279 === Start of file server.cmd Testnum 279 === End of file server.cmd === Start of file valgrind279 ==89152== ==89152== Process terminating with default action of signal 4 (SIGILL) ==89152== Illegal opcode at address 0x10B06D ==89152== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89152== by 0x10B06D: main (tool_main.c:234) === End of file valgrind279 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-time "http://127.0.0.1:39283/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 server.cmd Testnum 276 === End of file server.cmd === Start of file valgrind276 ==89125== ==89125== Process terminating with default action of signal 4 (SIGILL) ==89125== Illegal opcode at address 0x10B06D ==89125== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89125== by 0x10B06D: main (tool_main.c:234) === End of file valgrind276 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/11/valgrind278 ../src/curl -q --output log/11/curl278.out --include --trace-ascii log/11/trace278 --trace-time http://we.want.that.site.com/278 -x http://f%61ke:@127.0.0.1:35843 > log/11/stdout278 2> log/11/stderr278 278: 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 278 === Start of file server.cmd Testnum 278 === End of file server.cmd === Start of file valgrind278 ==89144== ==89144== Process terminating with default action of signal 4 (SIGILL) ==89144== Illegal opcode at address 0x10B06D ==89144== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89144== by 0x10B06D: main (tool_main.c:234) === End of file valgrind278 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/5/valgrind277 ../src/curl -q --output log/5/curl277.out --include --trace-ascii log/5/trace277 --trace-time http://127.0.0.1:33519/want/277 -F name=daniel -H "Content-Type: text/info" > log/5/stdout277 2> log/5/stderr277 277: 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 277 === Start of file server.cmd Testnum 277 === End of file server.cmd === Start of file valgrind277 ==89146== ==89146== Process terminating with default action of signal 4 (SIGILL) ==89146== Illegal opcode at address 0x10B06D ==89146== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89146== by 0x10B06D: main (tool_main.c:234) === End of file valgrind277 test 0280...[FTP --ftp-alternative-to-user on USER failure] ../libtool --mode=execute /usr/bin/valgrindCMD (33792): ../libtool --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/valgrind282 ../src/curl -q --output log/6/curl282.out --include --trace-ascii log/6/trace282 --trace-time http://127.0.0.1:41583/282 > log/6/stdout282 2> log/6/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/10/valgrind281 ../src/curl -q --output log/10/curl281.out --include --trace-ascii log/10/trace281 --trace-time http://127.0.0.1:36145/we/want/281 -f -T log/10/test281.txt > log/10/stdout281 2> log/10/stderr281 RUN: Process with pid 80133 forced to die with SIGKILL CMD (33792): ../libtool --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/valgrind287 ../src/curl -q --include --trace-ascii log/1/trace287 --trace-time http://test.remote.example.com.287:39283/path/287 -H "User-Agent: looser/2015" --proxy http://127.0.0.1:39283 --proxytunnel --proxy-header "User-Agent: looser/2007" > log/1/stdout287 2> log/1/stderr287 --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind280 ../src/curl -q --output log/7/curl280.out --include --trace-ascii log/7/trace280 --trace-time ftp://127.0.0.1:45903/280/ --ftp-alternative-to-user "USER replacement" > log/7/stdout280 2> log/7/stderr280 280: 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 280 === 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 ==89372== ==89372== Process terminating with default action of signal 4 (SIGILL) ==89372== Illegal opcode at address 0x10B06D ==89372== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89372== by 0x10B06D: main (tool_main.c:234) === End of file valgrind280 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/6/valgrind282 ../src/curl -q --output log/6/curl282.out --include --trace-ascii log/6/trace282 --trace-time http://127.0.0.1:41583/282 > log/6/stdout282 2> log/6/stderr282 282: 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 282 === Start of file server.cmd Testnum 282 === End of file server.cmd === Start of file valgrind282 ==89396== ==89396== Process terminating with default action of signal 4 (SIGILL) ==89396== Illegal opcode at address 0x10B06D ==89396== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89396== by 0x10B06D: main (tool_main.c:234) === End of file valgrind282 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/10/valgrind281 ../src/curl -q --output log/10/curl281.out --include --trace-ascii log/10/trace281 --trace-time http://127.0.0.1:36145/we/want/281 -f -T log/10/test281.txt > log/10/stdout281 2> log/10/stderr281 281: 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 281 === Start of file server.cmd Testnum 281 === End of file server.cmd === Start of file test281.txt Weird file to upload === End of file test281.txt === Start of file valgrind281 ==89395== ==89395== Process terminating with default action of signal 4 (SIGILL) ==89395== Illegal opcode at address 0x10B06D ==89395== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89395== by 0x10B06D: main (tool_main.c:234) === End of file valgrind281 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/2/valgrind190 ../src/curl -q --output log/2/curl190.out --include --trace-ascii log/2/trace190 --trace-time ftp://127.0.0.1:38659/path/to/file/190 -m 8 > log/2/stdout190 2> log/2/stderr190 190: 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 190 === Start of file server.cmd DELAY CWD 60 Testnum 190 === End of file server.cmd === Start of file valgrind190 ==84824== ==84824== Process terminating with default action of signal 4 (SIGILL) ==84824== Illegal opcode at address 0x10B06D ==84824== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==84824== by 0x10B06D: 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/5/valgrind289 ../src/curl -q --output log/5/curl289.out --include --trace-ascii log/5/trace289 --trace-time ftp://127.0.0.1:35155/289 -T log/5/illegal-nonexistent-file -C - > log/5/stdout289 2> log/5/stderr289 CMD (33792): ../libtool --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/valgrind288 ../src/curl -q --output log/11/curl288.out --trace-ascii log/11/trace288 --trace-time file://localhost/startdir/src/build-curl/tests/log/11/test288.txt > log/11/stdout288 2> log/11/stderr288 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/1/valgrind287 ../src/curl -q --include --trace-ascii log/1/trace287 --trace-time http://test.remote.example.com.287:39283/path/287 -H "User-Agent: looser/2015" --proxy http://127.0.0.1:39283 --proxytunnel --proxy-header "User-Agent: looser/2007" > log/1/stdout287 2> log/1/stderr287 287: stdout FAILED: --- log/1/check-expected 2024-05-23 11:16:00.643322747 +0200 +++ log/1/check-generated 2024-05-23 11:16:00.643322747 +0200 @@ -1,2 +0,0 @@ -HTTP/1.1 405 Method Not Allowed swsclose[CR][LF] -[CR][LF] == Contents of files in the log/1/ 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 server.cmd Testnum 287 === End of file server.cmd === Start of file valgrind287 ==89530== ==89530== Process terminating with default action of signal 4 (SIGILL) ==89530== Illegal opcode at address 0x10B06D ==89530== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89530== by 0x10B06D: main (tool_main.c:234) === End of file valgrind287 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/5/valgrind289 ../src/curl -q --output log/5/curl289.out --include --trace-ascii log/5/trace289 --trace-time ftp://127.0.0.1:35155/289 -T log/5/illegal-nonexistent-file -C - > log/5/stdout289 2> log/5/stderr289 curl returned 132, when expecting 26 289: exit FAILED == Contents of files in the log/5/ dir after test 289 === Start of file server.cmd Testnum 289 === End of file server.cmd === Start of file valgrind289 ==89531== ==89531== Process terminating with default action of signal 4 (SIGILL) ==89531== Illegal opcode at address 0x10B06D ==89531== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89531== by 0x10B06D: main (tool_main.c:234) === End of file valgrind289 CMD (33792): ../libtool --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/valgrind290 ../src/curl -q --output log/7/curl290.out --include --trace-ascii log/7/trace290 --trace-time ftp://127.0.0.1:45903/290 --max-filesize 30 > log/7/stdout290 2> log/7/stderr290 CMD (33792): ../libtool --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/valgrind292 ../src/curl -q --output log/10/curl292.out --include --trace-ascii log/10/trace292 --trace-time http://127.0.0.1:36145/292 --max-filesize 1000 > log/10/stdout292 2> log/10/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/12/valgrind271 ../src/curl -q --output log/12/curl271.out --include --trace-ascii log/12/trace271 --trace-time tftp://127.0.0.1:38295//271 > log/12/stdout271 2> log/12/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/6/valgrind291 ../src/curl -q --output log/6/curl291.out --include --trace-ascii log/6/trace291 --trace-time ftp://127.0.0.1:35103/291 --max-filesize 100 > log/6/stdout291 2> log/6/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/2/valgrind293 ../src/curl -q --output log/2/curl293.out --include --trace-ascii log/2/trace293 --trace-time http://127.0.0.1:44205/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/1/valgrind294 ../src/curl -q --output log/1/curl294.out --include --trace-ascii log/1/trace294 --trace-time ftp://127.0.0.1:35701/294/ --ftp-account "data for acct" > log/1/stdout294 2> log/1/stderr294 * 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/11/valgrind288 ../src/curl -q --output log/11/curl288.out --trace-ascii log/11/trace288 --trace-time file://localhost/startdir/src/build-curl/tests/log/11/test288.txt > log/11/stdout288 2> log/11/stderr288 288: data FAILED: --- log/11/check-expected 2024-05-23 11:16:00.659989754 +0200 +++ log/11/check-generated 2024-05-23 11:16:00.659989754 +0200 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/11/ 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 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 ==89526== ==89526== Process terminating with default action of signal 4 (SIGILL) ==89526== Illegal opcode at address 0x10B06D ==89526== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89526== by 0x10B06D: main (tool_main.c:234) === End of file valgrind288 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/7/valgrind290 ../src/curl -q --output log/7/curl290.out --include --trace-ascii log/7/trace290 --trace-time ftp://127.0.0.1:45903/290 --max-filesize 30 > log/7/stdout290 2> log/7/stderr290 290: 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 290 === Start of file server.cmd Testnum 290 === End of file server.cmd === Start of file valgrind290 ==89723== ==89723== Process terminating with default action of signal 4 (SIGILL) ==89723== Illegal opcode at address 0x10B06D ==89723== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89723== by 0x10B06D: main (tool_main.c:234) === End of file valgrind290 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/10/valgrind292 ../src/curl -q --output log/10/curl292.out --include --trace-ascii log/10/trace292 --trace-time http://127.0.0.1:36145/292 --max-filesize 1000 > log/10/stdout292 2> log/10/stderr292 292: 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 292 === Start of file server.cmd Testnum 292 === End of file server.cmd === Start of file valgrind292 ==89744== ==89744== Process terminating with default action of signal 4 (SIGILL) ==89744== Illegal opcode at address 0x10B06D ==89744== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89744== by 0x10B06D: main (tool_main.c:234) === End of file valgrind292 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/12/server/tftp_server.pid" --portfile "log/12/server/tftp_server.port" --logfile "log/12/tftp_server.log" --logdir "log/12" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:38295/verifiedserver" 2>log/12/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 88877 port 38295 * pid tftp => 88877 88877 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/12/valgrind271 ../src/curl -q --output log/12/curl271.out --include --trace-ascii log/12/trace271 --trace-time tftp://127.0.0.1:38295//271 > log/12/stdout271 2> log/12/stderr271 271: 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 271 === Start of file server.cmd Testnum 271 === End of file server.cmd === Start of file tftp_server.log 11:15:59.735457 Wrote pid 88877 to log/12/server/tftp_server.pid 11:15:59.735506 Wrote port 38295 to log/12/server/tftp_server.port 11:15:59.735514 Running IPv4 version on port UDP/38295 11:16:00.735932 trying to get file: verifiedserver mode 1 11:16:00.735947 Are-we-friendly question received 11:16:00.735954 write 11:16:00.735967 read 11:16:00.736059 read: 4 11:16:00.736091 end of one transfer === End of file tftp_server.log === Start of file valgrind271 ==89684== ==89684== Process terminating with default action of signal 4 (SIGILL) ==89684== Illegal opcode at address 0x10B06D ==89684== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89684== by 0x10B06D: main (tool_main.c:234) === End of file valgrind271 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/6/valgrind291 ../src/curl -q --output log/6/curl291.out --include --trace-ascii log/6/trace291 --trace-time ftp://127.0.0.1:35103/291 --max-filesize 100 > log/6/stdout291 2> log/6/stderr291 291: 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 291 === Start of file server.cmd Testnum 291 === End of file server.cmd === Start of file valgrind291 ==89739== ==89739== Process terminating with default action of signal 4 (SIGILL) ==89739== Illegal opcode at address 0x10B06D ==89739== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89739== by 0x10B06D: main (tool_main.c:234) === End of file valgrind291 test 0300 SKIPPED: no stunnel test 0301 SKIPPED: no stunnel test 0302 SKIPPED: no stunnel 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-time http://127.0.0.1:44205/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 server.cmd Testnum 293 === End of file server.cmd === Start of file valgrind293 ==89878== ==89878== Process terminating with default action of signal 4 (SIGILL) ==89878== Illegal opcode at address 0x10B06D ==89878== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89878== by 0x10B06D: main (tool_main.c:234) === End of file valgrind293 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/1/valgrind294 ../src/curl -q --output log/1/curl294.out --include --trace-ascii log/1/trace294 --trace-time ftp://127.0.0.1:35701/294/ --ftp-account "data for acct" > log/1/stdout294 2> log/1/stderr294 294: 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 294 === 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 ==89935== ==89935== Process terminating with default action of signal 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/5/valgrind295 ../src/curl -q --output log/5/curl295.out --include --trace-ascii log/5/trace295 --trace-time ftp://127.0.0.1:35155/295/ > log/5/stdout295 2> log/5/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/11/valgrind296 ../src/curl -q --output log/11/curl296.out --include --trace-ascii log/11/trace296 --trace-time --ftp-method multicwd ftp://127.0.0.1:36091/first/second/third/296 > log/11/stdout296 2> log/11/stderr296 CMD (33792): ../libtool --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/valgrind297 ../src/curl -q --output log/7/curl297.out --include --trace-ascii log/7/trace297 --trace-time --ftp-method singlecwd ftp://127.0.0.1:45903/first/second/third/297 > log/7/stdout297 2> log/7/stderr297 CMD (33792): ../libtool --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/valgrind298 ../src/curl -q --output log/10/curl298.out --include --trace-ascii log/10/trace298 --trace-time --ftp-method nocwd ftp://127.0.0.1:33661/first/second/th%69rd/298 > log/10/stdout298 2> log/10/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/12/valgrind299 ../src/curl -q --output log/12/curl299.out --include --trace-ascii log/12/trace299 --trace-time -x http://127.0.0.1:44175 -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/6/valgrind314 ../src/curl -q --output log/6/curl314.out --include --trace-ascii log/6/trace314 --trace-time http://127.0.0.1:41583/314 --compressed > log/6/stdout314 2> log/6/stderr314 CMD (33792): ../libtool --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/valgrind315 ../src/curl -q --output log/2/curl315.out --include --trace-ascii log/2/trace315 --trace-time http://127.0.0.1:44205/315 --compressed > log/2/stdout315 2> log/2/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/valgrind284 ../src/curl -q --output log/8/curl284.out --include --trace-ascii log/8/trace284 --trace-time tftp://127.0.0.1:49650//284 > log/8/stdout284 2> log/8/stderr284 (SIGILL) ==89935== Illegal opcode at address 0x10B06D ==89935== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89935== by 0x10B06D: main (tool_main.c:234) === End of file valgrind294 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/5/valgrind295 ../src/curl -q --output log/5/curl295.out --include --trace-ascii log/5/trace295 --trace-time ftp://127.0.0.1:35155/295/ > log/5/stdout295 2> log/5/stderr295 295: 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 295 === 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 ==89934== ==89934== Process terminating with default action of signal 4 (SIGILL) ==89934== Illegal opcode at address 0x10B06D ==89934== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89934== by 0x10B06D: 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/11/valgrind296 ../src/curl -q --output log/11/curl296.out --include --trace-ascii log/11/trace296 --trace-time --ftp-method multicwd ftp://127.0.0.1:36091/first/second/third/296 > log/11/stdout296 2> log/11/stderr296 296: 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 296 === Start of file server.cmd Testnum 296 === End of file server.cmd === Start of file valgrind296 ==89984== ==89984== Process terminating with default action of signal 4 (SIGILL) ==89984== Illegal opcode at address 0x10B06D ==89984== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89984== by 0x10B06D: 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/7/valgrind297 ../src/curl -q --output log/7/curl297.out --include --trace-ascii log/7/trace297 --trace-time --ftp-method singlecwd ftp://127.0.0.1:45903/first/second/third/297 > log/7/stdout297 2> log/7/stderr297 297: 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 297 === Start of file server.cmd Testnum 297 === End of file server.cmd === Start of file valgrind297 ==89983== ==89983== Process terminating with default action of signal 4 (SIGILL) ==89983== Illegal opcode at address 0x10B06D ==89983== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==89983== by 0x10B06D: main (tool_main.c:234) === End of file valgrind297 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/10/valgrind298 ../src/curl -q --output log/10/curl298.out --include --trace-ascii log/10/trace298 --trace-time --ftp-method nocwd ftp://127.0.0.1:33661/first/second/th%69rd/298 > log/10/stdout298 2> log/10/stderr298 298: 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 298 === Start of file server.cmd Testnum 298 === End of file server.cmd === Start of file valgrind298 ==90112== ==90112== Process terminating with default action of signal 4 (SIGILL) ==90112== Illegal opcode at address 0x10B06D ==90112== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90112== by 0x10B06D: main (tool_main.c:234) === End of file valgrind298 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 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-time -x http://127.0.0.1:44175 -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 server.cmd Testnum 299 === End of file server.cmd === Start of file valgrind299 ==90145== ==90145== Process terminating with default action of signal 4 (SIGILL) ==90145== Illegal opcode at address 0x10B06D ==90145== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90145== by 0x10B06D: main (tool_main.c:234) === End of file valgrind299 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/6/valgrind314 ../src/curl -q --output log/6/curl314.out --include --trace-ascii log/6/trace314 --trace-time http://127.0.0.1:41583/314 --compressed > log/6/stdout314 2> log/6/stderr314 314: 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 314 === Start of file server.cmd Testnum 314 === End of file server.cmd === Start of file valgrind314 ==90217== ==90217== Process terminating with default action of signal 4 (SIGILL) ==90217== Illegal opcode at address 0x10B06D ==90217== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90217== by 0x10B06D: main (tool_main.c:234) === End of file valgrind314 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/2/valgrind315 ../src/curl -q --output log/2/curl315.out --include --trace-ascii log/2/trace315 --trace-time http://127.0.0.1:44205/315 --compressed > log/2/stdout315 2> log/2/stderr315 315: 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 315 === Start of file server.cmd Testnum 315 === End of file server.cmd === Start of file valgrind315 ==90276== ==90276== Process terminating with default action of signal 4 (SIGILL) ==90276== Illegal opcode at address 0x10B06D ==90276== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90276== by 0x10B06D: main (tool_main.c:234) === End of file valgrind315 startnew: perl -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: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:49650/verifiedserver" 2>log/8/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 89521 port 49650 * pid tftp => 89521 89521 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/8/valgrind284 ../src/curl -q --output log/8/curl284.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/9/valgrind283 ../src/curl -q --output log/9/curl283.out --include --trace-ascii log/9/trace283 --trace-time tftp://127.0.0.1:45146//invalid-file --tftp-blksize 1024 > log/9/stdout283 2> log/9/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/1/valgrind316 ../src/curl -q --output log/1/curl316.out --include --trace-ascii log/1/trace316 --trace-time http://127.0.0.1:39283/316 --compressed > log/1/stdout316 2> log/1/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/5/valgrind317 ../src/curl -q --output log/5/curl317.out --include --trace-ascii log/5/trace317 --trace-time http://first.host.it.is/we/want/that/page/317 -x 127.0.0.1:33519 -H "Authorization: s3cr3t" --proxy-user testing:this --location > log/5/stdout317 2> log/5/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/4/valgrind286 ../src/curl -q --output log/4/curl286.out --include --trace-ascii log/4/trace286 --trace-time -T log/4/test286.txt tftp://127.0.0.1:54777// > log/4/stdout286 2> log/4/stderr286 CMD (33792): ../libtool --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/valgrind319 ../src/curl -q --output log/7/curl319.out --trace-ascii log/7/trace319 --trace-time http://127.0.0.1:35853/319 --raw > log/7/stdout319 2> log/7/stderr319 e --trace-ascii log/8/trace284 --trace-time tftp://127.0.0.1:49650//284 > log/8/stdout284 2> log/8/stderr284 284: 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 284 === Start of file server.cmd Testnum 284 === End of file server.cmd === Start of file tftp_server.log 11:15:59.503304 Wrote pid 89521 to log/8/server/tftp_server.pid 11:15:59.503359 Wrote port 49650 to log/8/server/tftp_server.port 11:15:59.503367 Running IPv4 version on port UDP/49650 11:16:00.506738 trying to get file: verifiedserver mode 1 11:16:00.506753 Are-we-friendly question received 11:16:00.506762 write 11:16:00.506777 read 11:16:00.507265 read: 4 11:16:00.507291 end of one transfer === End of file tftp_server.log === Start of file valgrind284 ==90377== ==90377== Process terminating with default action of signal 4 (SIGILL) ==90377== Illegal opcode at address 0x10B06D ==90377== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90377== by 0x10B06D: main (tool_main.c:234) === End of file valgrind284 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/9/server/tftp_server.pid" --portfile "log/9/server/tftp_server.port" --logfile "log/9/tftp_server.log" --logdir "log/9" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:45146/verifiedserver" 2>log/9/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 89520 port 45146 * pid tftp => 89520 89520 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/9/valgrind283 ../src/curl -q --output log/9/curl283.out --include --trace-ascii log/9/trace283 --trace-time tftp://127.0.0.1:45146//invalid-file --tftp-blksize 1024 > log/9/stdout283 2> log/9/stderr283 283: 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 283 === Start of file server.cmd Testnum 283 === End of file server.cmd === Start of file tftp_server.log 11:15:59.494707 Wrote pid 89520 to log/9/server/tftp_server.pid 11:15:59.494760 Wrote port 45146 to log/9/server/tftp_server.port 11:15:59.494768 Running IPv4 version on port UDP/45146 11:16:00.497135 trying to get file: verifiedserver mode 1 11:16:00.497152 Are-we-friendly question received 11:16:00.497161 write 11:16:00.497177 read 11:16:00.497254 read: 4 11:16:00.497290 end of one transfer === End of file tftp_server.log === Start of file valgrind283 ==90354== ==90354== Process terminating with default action of signal 4 (SIGILL) ==90354== Illegal opcode at address 0x10B06D ==90354== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90354== by 0x10B06D: main (tool_main.c:234) === End of file valgrind283 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/1/valgrind316 ../src/curl -q --output log/1/curl316.out --include --trace-ascii log/1/trace316 --trace-time http://127.0.0.1:39283/316 --compressed > log/1/stdout316 2> log/1/stderr316 316: 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 316 === Start of file server.cmd Testnum 316 === End of file server.cmd === Start of file valgrind316 ==90461== ==90461== Process terminating with default action of signal 4 (SIGILL) ==90461== Illegal opcode at address 0x10B06D ==90461== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90461== by 0x10B06D: main (tool_main.c:234) === End of file valgrind316 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/5/valgrind317 ../src/curl -q --output log/5/curl317.out --include --trace-ascii log/5/trace317 --trace-time http://first.host.it.is/we/want/that/page/317 -x 127.0.0.1:33519 -H "Authorization: s3cr3t" --proxy-user testing:this --location > log/5/stdout317 2> log/5/stderr317 317: 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 317 === Start of file server.cmd Testnum 317 === End of file server.cmd === Start of file valgrind317 ==90497== ==90497== Process terminating with default action of signal 4 (SIGILL) ==90497== Illegal opcode at address 0x10B06D ==90497== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90497== by 0x10B06D: main (tool_main.c:234) === End of file valgrind317 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/4/server/tftp_server.pid" --portfile "log/4/server/tftp_server.port" --logfile "log/4/tftp_server.log" --logdir "log/4" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:54777/verifiedserver" 2>log/4/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 89522 port 54777 * pid tftp => 89522 89522 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/4/valgrind286 ../src/curl -q --output log/4/curl286.out --include --trace-ascii log/4/trace286 --trace-time -T log/4/test286.txt tftp://127.0.0.1:54777// > log/4/stdout286 2> log/4/stderr286 286: 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 286 === 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 11:16:00.667908 Wrote pid 89522 to log/4/server/tftp_server.pid 11:16:00.667945 Wrote port 54777 to log/4/server/tftp_server.port 11:16:00.667951 Running IPv4 version on port UDP/54777 11:16:01.677147 trying to get file: verifiedserver mode 1 11:16:01.677165 Are-we-friendly question received 11:16:01.677174 write 11:16:01.677191 read 11:16:01.677687 read: 4 11:16:01.677717 end of one transfer === End of file tftp_server.log === Start of file valgrind286 ==90544== ==90544== Process terminating with default action of signal 4 (SIGILL) ==90544== Illegal opcode at address 0x10B06D ==90544== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90544== by 0x10B06D: main (tool_main.c:234) === End of file valgrind286 test 0319...[HTTP GET gzip transfer-encoded 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/7/valgrind319 ../src/curl -q --output log/7/curl319.out --trace-ascii log/7/trace319 --trace-time http://127.0.0.1:35853/319 --raw > log/7/stdout319 2> log/7/stderr319 319: protocol FAILED!CMD (33792): ../libtool --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/valgrind318 ../src/curl -q --output log/11/curl318.out --include --trace-ascii log/11/trace318 --trace-time http://first.host.it.is/we/want/that/page/318 -x 127.0.0.1:35843 -H "Authorization: s3cr3t" --proxy-user testing:this --location-trusted > log/11/stdout318 2> log/11/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/3/valgrind285 ../src/curl -q --output log/3/curl285.out --include --trace-ascii log/3/trace285 --trace-time -T log/3/test285.txt tftp://127.0.0.1:35271// --connect-timeout 549 > log/3/stdout285 2> log/3/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/12/valgrind327 ../src/curl -q --output log/12/curl327.out --include --trace-ascii log/12/trace327 --trace-time http://127.0.0.1:44175/we/want/327 -b none -c log/12/cookies327 http://127.0.0.1:44175/we/want/3270002 > log/12/stdout327 2> log/12/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/10/valgrind326 ../src/curl -q --output log/10/curl326.out --trace-ascii log/10/trace326 --trace-time http://127.0.0.1:36145/326 --raw > log/10/stdout326 2> log/10/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/6/valgrind328 ../src/curl -q --output log/6/curl328.out --include --trace-ascii log/6/trace328 --trace-time http://127.0.0.1:41583/hello/328 --compressed > log/6/stdout328 2> log/6/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/2/valgrind329 ../src/curl -q --output log/2/curl329.out --include --trace-ascii log/2/trace329 --trace-time http://127.0.0.1:44205/we/want/329 -b log/2/jar329.txt -b log/2/jar329-2.txt -H "Host: host.foo.com" http://127.0.0.1:44205/we/want/3290002 > log/2/stdout329 2> log/2/stderr329 CMD (33792): ../libtool --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/valgrind330 ../src/curl -q --output log/8/curl330.out --include --trace-ascii log/8/trace330 --trace-time http://first.host.it.is/we/want/that/page/330 -x 127.0.0.1:33791 -H "Cookie: test=yes" --location > log/8/stdout330 2> log/8/stderr330 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 319 === Start of file server.cmd Testnum 319 === End of file server.cmd === Start of file valgrind319 ==90585== ==90585== Process terminating with default action of signal 4 (SIGILL) ==90585== Illegal opcode at address 0x10B06D ==90585== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90585== by 0x10B06D: 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/11/valgrind318 ../src/curl -q --output log/11/curl318.out --include --trace-ascii log/11/trace318 --trace-time http://first.host.it.is/we/want/that/page/318 -x 127.0.0.1:35843 -H "Authorization: s3cr3t" --proxy-user testing:this --location-trusted > log/11/stdout318 2> log/11/stderr318 318: 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 318 === Start of file server.cmd Testnum 318 === End of file server.cmd === Start of file valgrind318 ==90506== ==90506== Process terminating with default action of signal 4 (SIGILL) ==90506== Illegal opcode at address 0x10B06D ==90506== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90506== by 0x10B06D: main (tool_main.c:234) === End of file valgrind318 startnew: perl -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: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:35271/verifiedserver" 2>log/3/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 89523 port 35271 * pid tftp => 89523 89523 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/3/valgrind285 ../src/curl -q --output log/3/curl285.out --include --trace-ascii log/3/trace285 --trace-time -T log/3/test285.txt tftp://127.0.0.1:35271// --connect-timeout 549 > log/3/stdout285 2> log/3/stderr285 285: 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 285 === 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 11:16:00.666543 Wrote pid 89523 to log/3/server/tftp_server.pid 11:16:00.666585 Wrote port 35271 to log/3/server/tftp_server.port 11:16:00.666591 Running IPv4 version on port UDP/35271 11:16:01.679574 trying to get file: verifiedserver mode 1 11:16:01.679589 Are-we-friendly question received 11:16:01.679597 write 11:16:01.679616 read 11:16:01.680490 read: 4 11:16:01.680518 end of one transfer === End of file tftp_server.log === Start of file valgrind285 ==90538== ==90538== Process terminating with default action of signal 4 (SIGILL) ==90538== Illegal opcode at address 0x10B06D ==90538== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90538== by 0x10B06D: main (tool_main.c:234) === End of file valgrind285 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/12/valgrind327 ../src/curl -q --output log/12/curl327.out --include --trace-ascii log/12/trace327 --trace-time http://127.0.0.1:44175/we/want/327 -b none -c log/12/cookies327 http://127.0.0.1:44175/we/want/3270002 > log/12/stdout327 2> log/12/stderr327 327: 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 327 === Start of file server.cmd Testnum 327 === End of file server.cmd === Start of file valgrind327 ==90754== ==90754== Process terminating with default action of signal 4 (SIGILL) ==90754== Illegal opcode at address 0x10B06D ==90754== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90754== by 0x10B06D: main (tool_main.c:234) === End of file valgrind327 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/10/valgrind326 ../src/curl -q --output log/10/curl326.out --trace-ascii log/10/trace326 --trace-time http://127.0.0.1:36145/326 --raw > log/10/stdout326 2> log/10/stderr326 326: 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 326 === Start of file server.cmd Testnum 326 === End of file server.cmd === Start of file valgrind326 ==90718== ==90718== Process terminating with default action of signal 4 (SIGILL) ==90718== Illegal opcode at address 0x10B06D ==90718== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90718== by 0x10B06D: main (tool_main.c:234) === End of file valgrind326 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/6/valgrind328 ../src/curl -q --output log/6/curl328.out --include --trace-ascii log/6/trace328 --trace-time http://127.0.0.1:41583/hello/328 --compressed > log/6/stdout328 2> log/6/stderr328 328: 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 328 === Start of file server.cmd Testnum 328 === End of file server.cmd === Start of file valgrind328 ==90836== ==90836== Process terminating with default action of signal 4 (SIGILL) ==90836== Illegal opcode at address 0x10B06D ==90836== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90836== by 0x10B06D: main (tool_main.c:234) === End of file valgrind328 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/2/valgrind329 ../src/curl -q --output log/2/curl329.out --include --trace-ascii log/2/trace329 --trace-time http://127.0.0.1:44205/we/want/329 -b log/2/jar329.txt -b log/2/jar329-2.txt -H "Host: host.foo.com" http://127.0.0.1:44205/we/want/3290002 > log/2/stdout329 2> log/2/stderr329 329: 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 329 === 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 valgrind329 ==90932== ==90932== Process terminating with default action of signal 4 (SIGILL) ==90932== Illegal opcode at address 0x10B06D ==90932== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90932== by 0x10B06D: main (tool_main.c:234) === End of file valgrind329 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/8/valgrind330 ../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/9/valgrind331 ../src/curl -q --output log/9/curl331.out --include --trace-ascii log/9/trace331 --trace-time -x http://127.0.0.1:40247 http://moo/we/want/331 -b none http://moo/we/want/3310002 > log/9/stdout331 2> log/9/stderr331 CMD (33792): ../libtool --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/valgrind333 ../src/curl -q --output log/5/curl333.out --include --trace-ascii log/5/trace333 --trace-time --no-proxy "hey" http://127.0.0.1:47/333 > log/5/stdout333 2> log/5/stderr333 CMD (33792): ../libtool --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/valgrind338 ../src/curl -q --output log/12/curl338.out --include --trace-ascii log/12/trace338 --trace-time http://127.0.0.1:44175/338 --next http://127.0.0.1:44175/338 --anyauth -u foo:moo > log/12/stdout338 2> log/12/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/7/valgrind335 ../src/curl -q --output log/7/curl335.out --include --trace-ascii log/7/trace335 --trace-time http://digest:alot@data.from.server.requiring.digest.hohoho.com/335 --proxy http://foo:bar@127.0.0.1:35853 --proxy-digest --digest > log/7/stdout335 2> log/7/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/11/valgrind336 ../src/curl -q --output log/11/curl336.out --include --trace-ascii log/11/trace336 --trace-time ftp://127.0.0.1:36091/336 --range 3-6 > log/11/stdout336 2> log/11/stderr336 CMD (33792): ../libtool --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/valgrind334 ../src/curl -q --output log/4/curl334.out --include --trace-ascii log/4/trace334 --trace-time http://127.0.0.1:41947/want/334 > log/4/stdout334 2> log/4/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/6/valgrind340 ../src/curl -q --output log/6/curl340.out --include --trace-ascii log/6/trace340 --trace-time --ftp-method singlecwd ftp://127.0.0.1:35103/%00first/second/third/340 > log/6/stdout340 2> log/6/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/3/valgrind337 ../src/curl -q --output log/3/curl337.out --include --trace-ascii log/3/trace337 --trace-time ftp://127.0.0.1:45493/337 --range 3-6 > log/3/stdout337 2> log/3/stderr337 --output log/8/curl330.out --include --trace-ascii log/8/trace330 --trace-time http://first.host.it.is/we/want/that/page/330 -x 127.0.0.1:33791 -H "Cookie: test=yes" --location > log/8/stdout330 2> log/8/stderr330 330: 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 330 === Start of file server.cmd Testnum 330 === End of file server.cmd === Start of file valgrind330 ==90991== ==90991== Process terminating with default action of signal 4 (SIGILL) ==90991== Illegal opcode at address 0x10B06D ==90991== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90991== by 0x10B06D: main (tool_main.c:234) === End of file valgrind330 test 0331...[HTTP with cookie using host 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/9/valgrind331 ../src/curl -q --output log/9/curl331.out --include --trace-ascii log/9/trace331 --trace-time -x http://127.0.0.1:40247 http://moo/we/want/331 -b none http://moo/we/want/3310002 > log/9/stdout331 2> log/9/stderr331 331: 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 331 === Start of file server.cmd Testnum 331 === End of file server.cmd === Start of file valgrind331 ==90987== ==90987== Process terminating with default action of signal 4 (SIGILL) ==90987== Illegal opcode at address 0x10B06D ==90987== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==90987== by 0x10B06D: main (tool_main.c:234) === End of file valgrind331 * 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/5/valgrind333 ../src/curl -q --output log/5/curl333.out --include --trace-ascii log/5/trace333 --trace-time --no-proxy "hey" http://127.0.0.1:47/333 > log/5/stdout333 2> log/5/stderr333 curl returned 132, when expecting 2 333: exit FAILED == Contents of files in the log/5/ dir after test 333 === Start of file server.cmd Testnum 333 === End of file server.cmd === Start of file valgrind333 ==91089== ==91089== Process terminating with default action of signal 4 (SIGILL) ==91089== Illegal opcode at address 0x10B06D ==91089== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91089== by 0x10B06D: main (tool_main.c:234) === End of file valgrind333 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/12/valgrind338 ../src/curl -q --output log/12/curl338.out --include --trace-ascii log/12/trace338 --trace-time http://127.0.0.1:44175/338 --next http://127.0.0.1:44175/338 --anyauth -u foo:moo > log/12/stdout338 2> log/12/stderr338 338: 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 338 === Start of file server.cmd connection-monitor Testnum 338 === End of file server.cmd === Start of file valgrind338 ==91269== ==91269== Process terminating with default action of signal 4 (SIGILL) ==91269== Illegal opcode at address 0x10B06D ==91269== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91269== by 0x10B06D: main (tool_main.c:234) === End of file valgrind338 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/7/valgrind335 ../src/curl -q --output log/7/curl335.out --include --trace-ascii log/7/trace335 --trace-time http://digest:alot@data.from.server.requiring.digest.hohoho.com/335 --proxy http://foo:bar@127.0.0.1:35853 --proxy-digest --digest > log/7/stdout335 2> log/7/stderr335 335: 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 335 === Start of file server.cmd Testnum 335 === End of file server.cmd === Start of file valgrind335 ==91120== ==91120== Process terminating with default action of signal 4 (SIGILL) ==91120== Illegal opcode at address 0x10B06D ==91120== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91120== by 0x10B06D: main (tool_main.c:234) === End of file valgrind335 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/11/valgrind336 ../src/curl -q --output log/11/curl336.out --include --trace-ascii log/11/trace336 --trace-time ftp://127.0.0.1:36091/336 --range 3-6 > log/11/stdout336 2> log/11/stderr336 336: 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 336 === 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 ==91138== ==91138== Process terminating with default action of signal 4 (SIGILL) ==91138== Illegal opcode at address 0x10B06D ==91138== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91138== by 0x10B06D: main (tool_main.c:234) === End of file valgrind336 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/4/valgrind334 ../src/curl -q --output log/4/curl334.out --include --trace-ascii log/4/trace334 --trace-time http://127.0.0.1:41947/want/334 > log/4/stdout334 2> log/4/stderr334 334: 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 334 === Start of file server.cmd Testnum 334 === End of file server.cmd === Start of file valgrind334 ==91111== ==91111== Process terminating with default action of signal 4 (SIGILL) ==91111== Illegal opcode at address 0x10B06D ==91111== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91111== by 0x10B06D: main (tool_main.c:234) === End of file valgrind334 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/6/valgrind340 ../src/curl -q --output log/6/curl340.out --include --trace-ascii log/6/trace340 --trace-time --ftp-method singlecwd ftp://127.0.0.1:35103/%00first/second/third/340 > log/6/stdout340 2> log/6/stderr340 340: 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 340 === Start of file server.cmd Testnum 340 === End of file server.cmd === Start of file valgrind340 ==91287== ==91287== Process terminating with default action of signal 4 (SIGILL) ==91287== Illegal opcode at address 0x10B06D ==91287== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91287== by 0x10B06D: main (tool_main.c:234) === End of file valgrind340 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/3/valgrind337 ../src/curl -q --output log/3/curl337.out --includeCMD (33792): ../libtool --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/valgrind339 ../src/curl -q --output log/10/curl339.out --include --trace-ascii log/10/trace339 --trace-time http://127.0.0.1:36145/339 --etag-save log/10/etag339 > log/10/stdout339 2> log/10/stderr339 CMD (33792): ../libtool --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/valgrind341 ../src/curl -q --output log/2/curl341.out --include --trace-ascii log/2/trace341 --trace-time http://127.0.0.1:44205/341 --etag-compare log/2/etag341 > log/2/stdout341 2> log/2/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/8/valgrind342 ../src/curl -q --output log/8/curl342.out --include --trace-ascii log/8/trace342 --trace-time http://127.0.0.1:33791/342 --etag-compare log/8/etag342 > log/8/stdout342 2> log/8/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/9/valgrind343 ../src/curl -q --output log/9/curl343.out --include --trace-ascii log/9/trace343 --trace-time http://127.0.0.1:40247/343 --etag-compare log/9/etag343 --etag-save log/9/out343 > log/9/stdout343 2> log/9/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/5/valgrind344 ../src/curl -q --output log/5/curl344.out --include --trace-ascii log/5/trace344 --trace-time http://127.0.0.1:33519/344 --etag-compare log/5/etag344 --etag-save log/5/etag344 > log/5/stdout344 2> log/5/stderr344 CMD (33792): ../libtool --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/valgrind346 ../src/curl -q --output log/7/curl346.out --include --trace-ascii log/7/trace346 --trace-time -x http://127.0.0.1:35853/346 -U puser: -u suser: http://remote.example/346 > log/7/stdout346 2> log/7/stderr346 CMD (33792): ../libtool --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/valgrind348 ../src/curl -q --output log/4/curl348.out --include --trace-ascii log/4/trace348 --trace-time ftp://127.0.0.1:36137/348 -T log/4/test348.txt > log/4/stdout348 2> log/4/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/11/valgrind347 ../src/curl -q --output log/11/curl347.out --include --trace-ascii log/11/trace347 --trace-time http://127.0.0.1:35843/347 --etag-save log/11/etag347 > log/11/stdout347 2> log/11/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/valgrind350 ../src/curl -q --output log/3/curl350.out --include --trace-ascii log/3/trace350 --trace-time ftp://127.0.0.1:45493// --ftp-method multicwd > log/3/stdout350 2> log/3/stderr350 --trace-ascii log/3/trace337 --trace-time ftp://127.0.0.1:45493/337 --range 3-6 > log/3/stdout337 2> log/3/stderr337 337: 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 337 === 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 ==91192== ==91192== Process terminating with default action of signal 4 (SIGILL) ==91192== Illegal opcode at address 0x10B06D ==91192== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91192== by 0x10B06D: main (tool_main.c:234) === End of file valgrind337 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/10/valgrind339 ../src/curl -q --output log/10/curl339.out --include --trace-ascii log/10/trace339 --trace-time http://127.0.0.1:36145/339 --etag-save log/10/etag339 > log/10/stdout339 2> log/10/stderr339 339: 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 339 === Start of file server.cmd Testnum 339 === End of file server.cmd === Start of file valgrind339 ==91274== ==91274== Process terminating with default action of signal 4 (SIGILL) ==91274== Illegal opcode at address 0x10B06D ==91274== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91274== by 0x10B06D: main (tool_main.c:234) === End of file valgrind339 test 0341...[Try to open a non existing file with --etag-compare should return an 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/2/valgrind341 ../src/curl -q --output log/2/curl341.out --include --trace-ascii log/2/trace341 --trace-time http://127.0.0.1:44205/341 --etag-compare log/2/etag341 > log/2/stdout341 2> log/2/stderr341 curl returned 132, when expecting 26 341: exit FAILED == Contents of files in the log/2/ dir after test 341 === Start of file server.cmd Testnum 341 === End of file server.cmd === Start of file valgrind341 ==91481== ==91481== Process terminating with default action of signal 4 (SIGILL) ==91481== Illegal opcode at address 0x10B06D ==91481== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91481== by 0x10B06D: main (tool_main.c:234) === End of file valgrind341 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/8/valgrind342 ../src/curl -q --output log/8/curl342.out --include --trace-ascii log/8/trace342 --trace-time http://127.0.0.1:33791/342 --etag-compare log/8/etag342 > log/8/stdout342 2> log/8/stderr342 342: 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 342 === Start of file etag342 "21025-dc7-39462498" === End of file etag342 === Start of file server.cmd Testnum 342 === End of file server.cmd === Start of file valgrind342 ==91530== ==91530== Process terminating with default action of signal 4 (SIGILL) ==91530== Illegal opcode at address 0x10B06D ==91530== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91530== by 0x10B06D: main (tool_main.c:234) === End of file valgrind342 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/9/valgrind343 ../src/curl -q --output log/9/curl343.out --include --trace-ascii log/9/trace343 --trace-time http://127.0.0.1:40247/343 --etag-compare log/9/etag343 --etag-save log/9/out343 > log/9/stdout343 2> log/9/stderr343 343: 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 343 === Start of file etag343 "21025-dc7-39462498" === End of file etag343 === Start of file server.cmd Testnum 343 === End of file server.cmd === Start of file valgrind343 ==91531== ==91531== Process terminating with default action of signal 4 (SIGILL) ==91531== Illegal opcode at address 0x10B06D ==91531== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91531== by 0x10B06D: main (tool_main.c:234) === End of file valgrind343 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/5/valgrind344 ../src/curl -q --output log/5/curl344.out --include --trace-ascii log/5/trace344 --trace-time http://127.0.0.1:33519/344 --etag-compare log/5/etag344 --etag-save log/5/etag344 > log/5/stdout344 2> log/5/stderr344 344: 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 344 === Start of file server.cmd Testnum 344 === End of file server.cmd === Start of file valgrind344 ==91635== ==91635== Process terminating with default action of signal 4 (SIGILL) ==91635== Illegal opcode at address 0x10B06D ==91635== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91635== by 0x10B06D: main (tool_main.c:234) === End of file valgrind344 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/7/valgrind346 ../src/curl -q --output log/7/curl346.out --include --trace-ascii log/7/trace346 --trace-time -x http://127.0.0.1:35853/346 -U puser: -u suser: http://remote.example/346 > log/7/stdout346 2> log/7/stderr346 346: 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 346 === Start of file server.cmd Testnum 346 === End of file server.cmd === Start of file valgrind346 ==91672== ==91672== Process terminating with default action of signal 4 (SIGILL) ==91672== Illegal opcode at address 0x10B06D ==91672== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91672== by 0x10B06D: main (tool_main.c:234) === End of file valgrind346 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/4/valgrind348 ../src/curl -q --output log/4/curl348.out --include --trace-ascii log/4/trace348 --trace-time ftp://127.0.0.1:36137/348 -T log/4/test348.txt > log/4/stdout348 2> log/4/stderr348 348: 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 348 === 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 ==91699== ==91699== Process terminating with default action of signal 4 (SIGILL) ==91699== Illegal opcode at address 0x10B06D ==91699== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91699== by 0x10B06D: main (tool_main.c:234) === End of file valgrind348 test 0347...[--etag-save with blank incoming header] ../libtool --mode=execute /usr/bin/valgrind --toCMD (33792): ../libtool --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/valgrind345 ../src/curl -q --output log/12/curl345.out --include --trace-ascii log/12/trace345 --trace-time http://127.0.0.1:44175/345 --etag-compare log/12/etag345 --etag-save log/12/etag345 > log/12/stdout345 2> log/12/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/10/valgrind351 ../src/curl -q --output log/10/curl351.out --include --trace-ascii log/10/trace351 --trace-time ftp://127.0.0.1:33661// --ftp-method nocwd > log/10/stdout351 2> log/10/stderr351 CMD (33792): ../libtool --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/valgrind349 ../src/curl -q --output log/6/curl349.out --include --trace-ascii log/6/trace349 --trace-time http://127.0.0.1:41583/349 --fail-with-body > log/6/stdout349 2> log/6/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/8/valgrind353 ../src/curl -q --output log/8/curl353.out --include --trace-ascii log/8/trace353 --trace-time ftp://127.0.0.1:43509/ --ftp-method singlecwd > log/8/stdout353 2> log/8/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/9/valgrind354 ../src/curl -q --output log/9/curl354.out --include --trace-ascii log/9/trace354 --trace-time ftp://127.0.0.1:39811/354 > log/9/stdout354 2> log/9/stderr354 CMD (33792): ../libtool --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/valgrind332 ../src/curl -q --output log/1/curl332.out --include --trace-ascii log/1/trace332 --trace-time tftp://127.0.0.1:50900//332 --tftp-blksize 400 > log/1/stdout332 2> log/1/stderr332 ol=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind347 ../src/curl -q --output log/11/curl347.out --include --trace-ascii log/11/trace347 --trace-time http://127.0.0.1:35843/347 --etag-save log/11/etag347 > log/11/stdout347 2> log/11/stderr347 347: 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 347 === Start of file server.cmd Testnum 347 === End of file server.cmd === Start of file valgrind347 ==91694== ==91694== Process terminating with default action of signal 4 (SIGILL) ==91694== Illegal opcode at address 0x10B06D ==91694== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91694== by 0x10B06D: main (tool_main.c:234) === End of file valgrind347 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/3/valgrind350 ../src/curl -q --output log/3/curl350.out --include --trace-ascii log/3/trace350 --trace-time ftp://127.0.0.1:45493// --ftp-method multicwd > log/3/stdout350 2> log/3/stderr350 350: 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 350 === Start of file server.cmd Testnum 350 === End of file server.cmd === Start of file valgrind350 ==91763== ==91763== Process terminating with default action of signal 4 (SIGILL) ==91763== Illegal opcode at address 0x10B06D ==91763== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91763== by 0x10B06D: main (tool_main.c:234) === End of file valgrind350 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/12/valgrind345 ../src/curl -q --output log/12/curl345.out --include --trace-ascii log/12/trace345 --trace-time http://127.0.0.1:44175/345 --etag-compare log/12/etag345 --etag-save log/12/etag345 > log/12/stdout345 2> log/12/stderr345 345: 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 345 === Start of file etag345 "21025-dc7-39462498" === End of file etag345 === Start of file server.cmd Testnum 345 === End of file server.cmd === Start of file valgrind345 ==91673== ==91673== Process terminating with default action of signal 4 (SIGILL) ==91673== Illegal opcode at address 0x10B06D ==91673== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91673== by 0x10B06D: main (tool_main.c:234) === End of file valgrind345 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/10/valgrind351 ../src/curl -q --output log/10/curl351.out --include --trace-ascii log/10/trace351 --trace-time ftp://127.0.0.1:33661// --ftp-method nocwd > log/10/stdout351 2> log/10/stderr351 351: 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 351 === Start of file server.cmd Testnum 351 === End of file server.cmd === Start of file valgrind351 ==91806== ==91806== Process terminating with default action of signal 4 (SIGILL) ==91806== Illegal opcode at address 0x10B06D ==91806== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91806== by 0x10B06D: main (tool_main.c:234) === End of file valgrind351 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/6/valgrind349 ../src/curl -q --output log/6/curl349.out --include --trace-ascii log/6/trace349 --trace-time http://127.0.0.1:41583/349 --fail-with-body > log/6/stdout349 2> log/6/stderr349 349: 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 349 === Start of file server.cmd Testnum 349 === End of file server.cmd === Start of file valgrind349 ==91755== ==91755== Process terminating with default action of signal 4 (SIGILL) ==91755== Illegal opcode at address 0x10B06D ==91755== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==91755== by 0x10B06D: main (tool_main.c:234) === End of file valgrind349 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/8/valgrind353 ../src/curl -q --output log/8/curl353.out --include --trace-ascii log/8/trace353 --trace-time ftp://127.0.0.1:43509/ --ftp-method singlecwd > log/8/stdout353 2> log/8/stderr353 353: 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 353 === Start of file server.cmd Testnum 353 === End of file server.cmd === Start of file valgrind353 ==92041== ==92041== Process terminating with default action of signal 4 (SIGILL) ==92041== Illegal opcode at address 0x10B06D ==92041== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92041== by 0x10B06D: 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/9/valgrind354 ../src/curl -q --output log/9/curl354.out --include --trace-ascii log/9/trace354 --trace-time ftp://127.0.0.1:39811/354 > log/9/stdout354 2> log/9/stderr354 354: 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 354 === Start of file server.cmd REPLY USER 200 fine, proceed without password Testnum 354 === End of file server.cmd === Start of file valgrind354 ==92058== ==92058== Process terminating with default action of signal 4 (SIGILL) ==92058== Illegal opcode at address 0x10B06D ==92058== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92058== by 0x10B06D: main (tool_main.c:234) === End of file valgrind354 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/1/server/tftp_server.pid" --portfile "log/1/server/tftp_server.port" --logfile "log/1/tftp_server.log" --logdir "log/1" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:50900/verifiedserver" 2>log/1/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 91086 port 50900 * pid tftp => 91086 91086 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/1/valgrind332 ../src/curl -q --output log/1/curl332.out --include --trace-ascii log/1/trace332 --trace-time tftp://127.0.0.1:50900//332 --tftp-blksize 400 > log/1/stdout332 2> log/1/stderr332 332: 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 332 === Start of file server.cmd Testnum 332 === End of file server.cmd === Start of file tftp_server.log 11:16:01.289302 Wrote pid 91086 to log/1/server/tftp_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/5/valgrind355 ../src/curl -q --output log/5/curl355.out --include --trace-ascii log/5/trace355 --trace-time http://127.0.0.1:33519/355 --alt-svc "" > log/5/stdout355 2> log/5/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/11/valgrind361 ../src/curl -q --output log/11/curl361.out --include --trace-ascii log/11/trace361 --trace-time http://127.0.0.1:35843/361 http://127.0.0.1:35843/361 --fail-with-body > log/11/stdout361 2> log/11/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/6/valgrind367 ../src/curl -q --output log/6/curl367.out --include --trace-ascii log/6/trace367 --trace-time http://:example@127.0.0.1:41583/367 > log/6/stdout367 2> log/6/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/4/valgrind360 ../src/curl -q --output log/4/curl360.out --include --trace-ascii log/4/trace360 --trace-time http://127.0.0.1:41947/360 --fail-with-body --fail > log/4/stdout360 2> log/4/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/12/valgrind365 ../src/curl -q --output log/12/curl365.out --include --trace-ascii log/12/trace365 --trace-time http://127.0.0.1:44175/365 > log/12/stdout365 2> log/12/stderr365 CMD (33792): ../libtool --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/valgrind357 ../src/curl -q --output log/7/curl357.out --include --trace-ascii log/7/trace357 --trace-time http://127.0.0.1:35853/we/want/357 -T log/7/test357.txt --expect100-timeout 99 > log/7/stdout357 2> log/7/stderr357 CMD (33792): ../libtool --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/valgrind362 ../src/curl -q --output log/3/curl362.out --include --trace-ascii log/3/trace362 --trace-time ftp://127.0.0.1:45493/362 -T log/3/test362.txt --continue-at - > log/3/stdout362 2> log/3/stderr362 CMD (33792): ../libtool --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/valgrind366 ../src/curl -q --output log/10/curl366.out --include --trace-ascii log/10/trace366 --trace-time http://127.0.0.1:36145/366 --retry 2 --retry-max-time 10 > log/10/stdout366 2> log/10/stderr366 pid 11:16:01.289346 Wrote port 50900 to log/1/server/tftp_server.port 11:16:01.289352 Running IPv4 version on port UDP/50900 11:16:02.296145 trying to get file: verifiedserver mode 1 11:16:02.296163 Are-we-friendly question received 11:16:02.296172 write 11:16:02.296193 read 11:16:02.299193 read: 4 11:16:02.299227 end of one transfer === End of file tftp_server.log === Start of file valgrind332 ==92151== ==92151== Process terminating with default action of signal 4 (SIGILL) ==92151== Illegal opcode at address 0x10B06D ==92151== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92151== by 0x10B06D: main (tool_main.c:234) === End of file valgrind332 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/5/valgrind355 ../src/curl -q --output log/5/curl355.out --include --trace-ascii log/5/trace355 --trace-time http://127.0.0.1:33519/355 --alt-svc "" > log/5/stdout355 2> log/5/stderr355 355: 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 355 === Start of file altsvc-355 h1 example.com 80 h1 127.0.0.1 33519 "20290222 22:19:28" 0 0 === End of file altsvc-355 === Start of file server.cmd Testnum 355 === End of file server.cmd === Start of file valgrind355 ==92202== ==92202== Process terminating with default action of signal 4 (SIGILL) ==92202== Illegal opcode at address 0x10B06D ==92202== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92202== by 0x10B06D: main (tool_main.c:234) === End of file valgrind355 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/11/valgrind361 ../src/curl -q --output log/11/curl361.out --include --trace-ascii log/11/trace361 --trace-time http://127.0.0.1:35843/361 http://127.0.0.1:35843/361 --fail-with-body > log/11/stdout361 2> log/11/stderr361 361: 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 361 === Start of file server.cmd Testnum 361 === End of file server.cmd === Start of file valgrind361 ==92258== ==92258== Process terminating with default action of signal 4 (SIGILL) ==92258== Illegal opcode at address 0x10B06D ==92258== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92258== by 0x10B06D: 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/6/valgrind367 ../src/curl -q --output log/6/curl367.out --include --trace-ascii log/6/trace367 --trace-time http://:example@127.0.0.1:41583/367 > log/6/stdout367 2> log/6/stderr367 367: 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 367 === Start of file server.cmd Testnum 367 === End of file server.cmd === Start of file valgrind367 ==92313== ==92313== Process terminating with default action of signal 4 (SIGILL) ==92313== Illegal opcode at address 0x10B06D ==92313== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92313== by 0x10B06D: main (tool_main.c:234) === End of file valgrind367 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/4/valgrind360 ../src/curl -q --output log/4/curl360.out --include --trace-ascii log/4/trace360 --trace-time http://127.0.0.1:41947/360 --fail-with-body --fail > log/4/stdout360 2> log/4/stderr360 curl returned 132, when expecting 2 360: exit FAILED == Contents of files in the log/4/ dir after test 360 === Start of file server.cmd Testnum 360 === End of file server.cmd === Start of file valgrind360 ==92251== ==92251== Process terminating with default action of signal 4 (SIGILL) ==92251== Illegal opcode at address 0x10B06D ==92251== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92251== by 0x10B06D: main (tool_main.c:234) === End of file valgrind360 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/12/valgrind365 ../src/curl -q --output log/12/curl365.out --include --trace-ascii log/12/trace365 --trace-time http://127.0.0.1:44175/365 > log/12/stdout365 2> log/12/stderr365 365: 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 365 === Start of file server.cmd Testnum 365 === End of file server.cmd === Start of file valgrind365 ==92327== ==92327== Process terminating with default action of signal 4 (SIGILL) ==92327== Illegal opcode at address 0x10B06D ==92327== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92327== by 0x10B06D: main (tool_main.c:234) === End of file valgrind365 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/3/valgrind362 ../src/curl -q --output log/3/curl362.out --include --trace-ascii log/3/trace362 --trace-time ftp://127.0.0.1:45493/362 -T log/3/test362.txt --continue-at - > log/3/stdout362 2> log/3/stderr362 362: 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 362 === 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 ==92253== ==92253== Process terminating with default action of signal 4 (SIGILL) ==92253== Illegal opcode at address 0x10B06D ==92253== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92253== by 0x10B06D: main (tool_main.c:234) === End of file valgrind362 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/7/valgrind357 ../src/curl -q --output log/7/curl357.out --include --trace-ascii log/7/trace357 --trace-time http://127.0.0.1:35853/we/want/357 -T log/7/test357.txt --expect100-timeout 99 > log/7/stdout357 2> log/7/stderr357 357: 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 357 === Start of file server.cmd no-expect Testnum 357 === End of file server.cmd === Start of file test357.txt xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxCMD (33792): ../libtool --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/valgrind368 ../src/curl -q --output log/8/curl368.out --include --trace-ascii log/8/trace368 --trace-time http://127.0.0.1:33791/368 -r 4 > log/8/stdout368 2> log/8/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/9/valgrind369 ../src/curl -q --output log/9/curl369.out --include --trace-ascii log/9/trace369 --trace-time http://127.0.0.1:40247/369 --etag-save log/9/nowhere/etag369 --next http://127.0.0.1:40247/369 --include --output log/9/curl369.out > log/9/stdout369 2> log/9/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/1/valgrind370 ../src/curl -q --output log/1/curl370.out --include --trace-ascii log/1/trace370 --trace-time http://127.0.0.1:47/370 --etag-save log/1/nowhere/etag370 > log/1/stdout370 2> log/1/stderr370 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx === End of file test357.txt === Start of file valgrind357 ==92257== ==92257== Process terminating with default action of signal 4 (SIGILL) ==92257== Illegal opcode at address 0x10B06D ==92257== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92257== by 0x10B06D: main (tool_main.c:234) === End of file valgrind357 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/10/valgrind366 ../src/curl -q --output log/10/curl366.out --include --trace-ascii log/10/trace366 --trace-time http://127.0.0.1:36145/366 --retry 2 --retry-max-time 10 > log/10/stdout366 2> log/10/stderr366 366: 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 366 === Start of file server.cmd Testnum 366 === End of file server.cmd === Start of file valgrind366 ==92315== ==92315== Process terminating with default action of signal 4 (SIGILL) ==92315== Illegal opcode at address 0x10B06D ==92315== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92315== by 0x10B06D: main (tool_main.c:234) === End of file valgrind366 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/8/valgrind368 ../src/curl -q --output log/8/curl368.out --include --trace-ascii log/8/trace368 --trace-time http://127.0.0.1:33791/368 -r 4 > log/8/stdout368 2> log/8/stderr368 368: 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 368 === Start of file server.cmd Testnum 368 === End of file server.cmd === Start of file valgrind368 ==92599== ==92599== Process terminating with default action of signal 4 (SIGILL) ==92599== Illegal opcode at address 0x10B06D ==92599== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92599== by 0x10B06D: main (tool_main.c:234) === End of file valgrind368 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/9/valgrind369 ../src/curl -q --output log/9/curl369.out --include --trace-ascii log/9/trace369 --trace-time http://127.0.0.1:40247/369 --etag-save log/9/nowhere/etag369 --next http://127.0.0.1:40247/369 --include --output log/9/curl369.out > log/9/stdout369 2> log/9/stderr369 369: 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 369 === Start of file server.cmd Testnum 369 === End of file server.cmd === Start of file valgrind369 ==92632== ==92632== Process terminating with default action of signal 4 (SIGILL) ==92632== Illegal opcode at address 0x10B06D ==92632== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92632== by 0x10B06D: main (tool_main.c:234) === End of file valgrind369 * starts no server test 0370...[--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/1/valgrind370 ../src/curl -q --output log/1/curl370.out --include --trace-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/5/valgrind371 ../src/curl -q --output log/5/curl371.out --include --trace-ascii log/5/trace371 --trace-time http://127.0.0.1:33519/371 -o log/5/dump -o log/5/dump2 --no-progress-meter > log/5/stdout371 2> log/5/stderr371 scii log/1/trace370 --trace-time http://127.0.0.1:47/370 --etag-save log/1/nowhere/etag370 > log/1/stdout370 2> log/1/stderr370 curl returned 132, when expecting 26 370: exit FAILED == Contents of files in the log/1/ dir after test 370 === Start of file server.cmd Testnum 370 === End of file server.cmd === Start of file valgrind370 ==92696== ==92696== Process terminating with default action of signal 4 (SIGILL) ==92696== Illegal opcode at address 0x10B06D ==92696== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92696== by 0x10B06D: main (tool_main.c:234) === End of file valgrind370 CMD (33792): ../libtool --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/valgrind380 ../src/curl -q --output log/10/curl380.out --include --trace-ascii log/10/trace380 --trace-time --netrc --netrc-file log/10/netrc380 ftp://mary@127.0.0.1:33661/ > log/10/stdout380 2> log/10/stderr380 CMD (33792): ../libtool --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/valgrind374 ../src/curl -q --output log/4/curl374.out --include --trace-ascii log/4/trace374 --trace-time http://127.0.0.1:41947/gif/374 > log/4/stdout374 2> log/4/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/11/valgrind372 ../src/curl -q --output log/11/curl372.out --include --trace-ascii log/11/trace372 --trace-time --raw http://127.0.0.1:35843/binary-zero-in-data-section/372 > log/11/stdout372 2> log/11/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/6/valgrind373 ../src/curl -q --output log/6/curl373.out --include --trace-ascii log/6/trace373 --trace-time http://127.0.0.1:41583/chunked-transfer-encoding/373 > log/6/stdout373 2> log/6/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/12/valgrind376 ../src/curl -q --include --trace-ascii log/12/trace376 --trace-time http://127.0.0.1:44175/376 -o log/12/save-376 --remove-on-error > log/12/stdout376 2> log/12/stderr376 CMD (33792): ../libtool --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/valgrind379 ../src/curl -q --include --trace-ascii log/7/trace379 --trace-time http://127.0.0.1:35853/379 -o log/7/save --remove-on-error --no-clobber > log/7/stdout379 2> log/7/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/3/valgrind378 ../src/curl -q --output log/3/curl378.out --include --trace-ascii log/3/trace378 --trace-time -T log/3/378 -d input http://never-accessed > log/3/stdout378 2> log/3/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/5/valgrind371 ../src/curl -q --output log/5/curl371.out --include --trace-ascii log/5/trace371 --trace-time http://127.0.0.1:33519/371 -o log/5/dump -o log/5/dump2 --no-progress-meter > log/5/stdout371 2> log/5/stderr371 371: stderr FAILED: --- log/5/check-expected 2024-05-23 11:16:04.153394790 +0200 +++ log/5/check-generated 2024-05-23 11:16:04.153394790 +0200 @@ -1 +0,0 @@ -Warning: Got more output options than URLs[LF] == Contents of files in the log/5/ dir after test 371 === Start of file check-expected Warning: Got more output options than URLs[LF] === End of file check-expected === Start of file server.cmd Testnum 371 === End of file server.cmd === Start of file valgrind371 ==92748== ==92748== Process terminating with default action of signal 4 (SIGILL) ==92748== Illegal opcode at address 0x10B06D ==92748== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92748== by 0x10B06D: main (tool_main.c:234) === End of file valgrind371 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/10/valgrind380 ../src/curl -q --output log/10/curl380.out --include --trace-ascii log/10/trace380 --trace-time --netrc --netrc-file log/10/netrc380 ftp://mary@127.0.0.1:33661/ > log/10/stdout380 2> log/10/stderr380 380: 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 380 === 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 ==92955== ==92955== Process terminating with default action of signal 4 (SIGILL) ==92955== Illegal opcode at address 0x10B06D ==92955== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92955== by 0x10B06D: main (tool_main.c:234) === End of file valgrind380 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/4/valgrind374 ../src/curl -q --output log/4/curl374.out --include --trace-ascii log/4/trace374 --trace-time http://127.0.0.1:41947/gif/374 > log/4/stdout374 2> log/4/stderr374 374: 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 374 === Start of file server.cmd Testnum 374 === End of file server.cmd === Start of file valgrind374 ==92809== ==92809== Process terminating with default action of signal 4 (SIGILL) ==92809== Illegal opcode at address 0x10B06D ==92809== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92809== by 0x10B06D: main (tool_main.c:234) === End of file valgrind374 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/11/valgrind372 ../src/curl -q --output log/11/curl372.out --include --trace-ascii log/11/trace372 --trace-time --raw http://127.0.0.1:35843/binary-zero-in-data-section/372 > log/11/stdout372 2> log/11/stderr372 372: 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 372 === Start of file server.cmd Testnum 372 === End of file server.cmd === Start of file valgrind372 ==92796== ==92796== Process terminating with default action of signal 4 (SIGILL) ==92796== Illegal opcode at address 0x10B06D ==92796== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92796== by 0x10B06D: main (tool_main.c:234) === End of file valgrind372 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/6/valgrind373 ../src/curl -q --output log/6/curl373.out --include --trace-ascii log/6/trace373 --trace-time http://127.0.0.1:41583/chunked-transfer-encoding/373 > log/6/stdout373 2> log/6/stderr373 373: 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 373 === Start of file server.cmd Testnum 373 === End of file server.cmd === Start of file valgrind373 ==92814== ==92814== Process terminating with default action of signal 4 (SIGILL) ==92814== Illegal opcode at address 0x10B06D ==92814== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92814== by 0x10B06D: 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/12/valgrind376 ../src/curl -q --include --trace-ascii log/12/trace376 --trace-time http://127.0.0.1:44175/376 -o log/12/save-376 --remove-on-error > log/12/stdout376 2> log/12/stderr376 376: 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 376 === Start of file server.cmd Testnum 376 === End of file server.cmd === Start of file valgrind376 ==92845== ==92845== Process terminating with default action of signal 4 (SIGILL) ==92845== Illegal opcode at address 0x10B06D ==92845== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92845== by 0x10B06D: main (tool_main.c:234) === End of file valgrind376 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/7/valgrind379 ../src/curl -q --include --trace-ascii log/7/trace379 --trace-time http://127.0.0.1:35853/379 -o log/7/save --remove-on-error --no-clobber > log/7/stdout379 2> log/7/stderr379 379: 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 379 === 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 valgrind379 ==92959== ==92959== Process terminating with default action of signal 4 (SIGILL) ==92959== Illegal opcode at address 0x10B06D ==92959== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92959== by 0x10B06D: main (tool_main.c:234) === End of file valgrind379 CMD (33792): ../libtool --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/valgrind352 ../src/curl -q --output log/2/curl352.out --include --trace-ascii log/2/trace352 --trace-time ftp://127.0.0.1:42239// --ftp-method singlecwd > log/2/stdout352 2> log/2/stderr352 * 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/3/valgrind378 ../src/curl -q --output log/3/curl378.out --include --trace-ascii log/3/trace378 --trace-time -T log/3/378 -d input http://never-accessed > log/3/stdout378 2> log/3/stderr378 378: stderr FAILED: --- log/3/check-expected 2024-05-23 11:16:04.236729835 +0200 +++ log/3/check-generated 2024-05-23 11:16:04.236729835 +0200 @@ -1,2 +0,0 @@ -Warning: You can only select one HTTP request method! You asked for both PUT [LF] -Warning: (-T, --upload-file) and POST (-d, --data).[LF] == Contents of files in the log/3/ dir after test 378 === Start of file check-expected Warning: You can only select one HTTP request method! You asked for both PUT [LF] Warning: (-T, --upload-file) and POST (-d, --data).[LF] === End of file check-expected === Start of file server.cmd Testnum 378 === End of file server.cmd === Start of file valgrind378 ==92911== ==92911== Process terminating with default action of signal 4 (SIGILL) ==92911== Illegal opcode at address 0x10B06D ==92911== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==92911== by 0x10B06D: main (tool_main.c:234) === End of file valgrind378 startnew: perl -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 42239 (log/2/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:42239/verifiedserver" 2>log/2/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 92038 port 42239 * pid ftp => 92038 92038 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/2/valgrind352 ../src/curl -q --output log/2/curl352.out --include --trace-ascii log/2/trace352 --trace-time ftp://127.0.0.1:42239// --ftp-method singlecwd > log/2/stdout352 2> log/2/stderr352 352: 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 352 === Start of file ftp_server.log 11:16:02.670100 FTP server listens on port IPv4/42239 11:16:02.670175 logged pid 92038 in log/2/server/ftp_server.pid 11:16:02.670193 Awaiting input 11:16:03.659627 ====> Client connect 11:16:03.659777 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:03.660011 < "USER anonymous" 11:16:03.660038 > "331 We are happy you popped in![CR][LF]" 11:16:03.660158 < "PASS ftp@example.com" 11:16:03.660176 > "230 Welcome you silly person[CR][LF]" 11:16:03.660281 < "PWD" 11:16:03.660302 > "257 "/" is current directory[CR][LF]" 11:16:03.660415 < "EPSV" 11:16:03.660435 ====> Passive DATA channel requested by client 11:16:03.660444 DATA sockfilt for passive data channel starting... 11:16:03.661712 DATA sockfilt for passive data channel started (pid 93078) 11:16:03.661801 DATA sockfilt for passive data channel listens on port 40321 11:16:03.661833 > "229 Entering Passive Mode (|||40321|)[LF]" 11:16:03.661845 Client has been notified that DATA conn will be accepted on port 40321 11:16:03.662051 Client connects to port 40321 11:16:03.662084 ====> Client established passive DATA connection on port 40321 11:16:03.662145 < "TYPE I" 11:16:03.662169 > "200 I modify TYPE as you wanted[CR][LF]" 11:16:03.662288 < "SIZE verifiedserver" 11:16:03.662313 > "213 17[CR][LF]" 11:16:03.662418 < "RETR verifiedserver" 11:16:03.662442 > "150 Binary junk (17 bytes).[CR][LF]" 11:16:03.662506 =====> Closing passive DATA connection... 11:16:03.662517 Server disconnects passive DATA connection 11:16:03.662694 Server disconnected passive DATA connection 11:16:03.662717 DATA sockfilt for passive data channel quits (pid 93078) 11:16:03.662873 DATA sockfilt for passive data channel quit (pid 93078) 11:16:03.662888 =====> Closed passive DATA connection 11:16:03.662910 > "226 File transfer complete[CR][LF]" 11:16:03.709358 < "QUIT" 11:16:03.709406 > "221 bye bye baby[CR][LF]" 11:16:03.715716 MAIN sockfilt said DISC 11:16:03.715757 ====> Client disconnected 11:16:03.715808 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:16:02.187190 Running IPv4 version 11:16:02.187284 Listening on port 42239 11:16:02.187312 Wrote pid 92039 to log/2/server/ftp_sockctrl.pid 11:16:02.187333 Wrote port 42239 to log/2/server/ftp_server.port 11:16:02.187347 Received PING (on stdin) 11:16:03.176871 ====> Client connect 11:16:03.177110 Received DATA (on stdin) 11:16:03.177120 > 160 bytes data, server => client 11:16:03.177129 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:03.177138 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:03.177146 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:03.177208 < 16 bytes data, client => server 11:16:03.177217 'USER anonymous\r\n' 11:16:03.177364 Received DATA (on stdin) 11:16:03.177373 > 33 bytes data, server => client 11:16:03.177381 '331 We are happy you popped in!\r\n' 11:16:03.177422 < 22 bytes data, client => server 11:16:03.177430 'PASS ftp@example.com\r\n' 11:16:03.177499 Received DATA (on stdin) 11:16:03.177510 > 30 bytes data, server => client 11:16:03.177518 '230 Welcome you silly person\r\n' 11:16:03.177552 < 5 bytes data, client => server 11:16:03.177558 'PWD\r\n' 11:16:03.177624 Received DATA (on stdin) 11:16:03.177631 > 30 bytes data, server => client 11:16:03.177638 '257 "/" is current directory\r\n' 11:16:03.177682 < 6 bytes data, client => server 11:16:03.177689 'EPSV\r\n' 11:16:03.179144 Received DATA (on stdin) 11:16:03.179159 > 38 bytes data, server => client 11:16:03.179167 '229 Entering Passive Mode (|||40321|)\n' 11:16:03.179314 < 8 bytes data, client => server 11:16:03.179325 'TYPE I\r\n' 11:16:03.179497 Received DATA (on stdin) 11:16:03.179507 > 33 bytes data, server => client 11:16:03.179515 '200 I modify TYPE as you wanted\r\n' 11:16:03.179555 < 21 bytes data, client => server 11:16:03.179563 'SIZE verifiedserver\r\n' 11:16:03.179636 Received DATA (on stdin) 11:16:03.179644 > 8 bytes data, server => client 11:16:03.179650 '213 17\r\n' 11:16:03.179685 < 21 bytes data, client => server 11:16:03.179693 'RETR verifiedserver\r\n' 11:16:03.179843 Received DATA (on stdin) 11:16:03.179852 > 29 bytes data, server => client 11:16:03.179859 '150 Binary junk (17 bytes).\r\n' 11:16:03.180235 Received DATA (on stdin) 11:16:03.180245 > 28 bytes data, server => client 11:16:03.180253 '226 File transfer complete\r\n' 11:16:03.226518 < 6 bytes data, client => server 11:16:03.226546 'QUIT\r\n' 11:16:03.226737 Received DATA (on stdin) 11:16:03.226748 > 18 bytes data, server => client 11:16:03.226756 '221 bye bye baby\r\n' 11:16:03.232723 ====> Client disconnect 11:16:03.233135 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:16:03.178882 Running IPv4 version 11:16:03.178945 Listening on port 40321 11:16:03.178977 Wrote pid 93078 to log/2/server/ftp_sockdata.pid 11:16:03.178991 Received PING (on stdin) 11:16:03.179057 Received PORT (on stdin) 11:16:03.179339 ====> Client connect 11:16:03.179880 Received DATA (on stdin) 11:16:03.179892 > 17 bytes data, server => client 11:16:03.179900 'WE ROOLZ: 92038\r\n' 11:16:03.179921 Received DISC (on stdin) 11:16:03.179929 ====> Client forcibly disconnected 11:16:03.180048 Received QUIT (on stdin) 11:16:03.180056 quits 11:16:03.180091 ============> sockfilt quits === End of file ftp_sockdata.log === Start 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/9/valgrind383 ../src/curl -q --output log/9/curl383.out --include --trace-ascii log/9/trace383 --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:40247/383 > log/9/stdout383 2> log/9/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/8/valgrind381 ../src/curl -q --output log/8/curl381.out --include --trace-ascii log/8/trace381 --trace-time --netrc-optional --netrc-file log/8/netrc381 ftp://mary:drfrank@127.0.0.1:43509/ > log/8/stdout381 2> log/8/stderr381 CMD (33792): ../libtool --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/valgrind384 ../src/curl -q --output log/1/curl384.out --include --trace-ascii log/1/trace384 --trace-time --json @- http://127.0.0.1:39283/384 -H "Accept: foobar/*" log/1/stdout384 2> log/1/stderr384 CMD (33792): ../libtool --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/valgrind385 ../src/curl -q --output log/5/curl385.out --include --trace-ascii log/5/trace385 --trace-time --json '{ "drink": "coffe",' --json ' "crunch": "cookie" }' http://127.0.0.1:33519/385 -H "Content-Type: drinks/hot" > log/5/stdout385 2> log/5/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/4/valgrind387 ../src/curl -q --output log/4/curl387.out --include --trace-ascii log/4/trace387 --trace-time http://127.0.0.1:41947/387 -sS --tr-encoding > log/4/stdout387 2> log/4/stderr387 e server.cmd Testnum 352 === End of file server.cmd === Start of file valgrind352 ==93152== ==93152== Process terminating with default action of signal 4 (SIGILL) ==93152== Illegal opcode at address 0x10B06D ==93152== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93152== by 0x10B06D: main (tool_main.c:234) === End of file valgrind352 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/9/valgrind383 ../src/curl -q --output log/9/curl383.out --include --trace-ascii log/9/trace383 --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:40247/383 > log/9/stdout383 2> log/9/stderr383 383: 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 383 === Start of file server.cmd Testnum 383 === End of file server.cmd === Start of file valgrind383 ==93215== ==93215== Process terminating with default action of signal 4 (SIGILL) ==93215== Illegal opcode at address 0x10B06D ==93215== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93215== by 0x10B06D: main (tool_main.c:234) === End of file valgrind383 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/8/valgrind381 ../src/curl -q --output log/8/curl381.out --include --trace-ascii log/8/trace381 --trace-time --netrc-optional --netrc-file log/8/netrc381 ftp://mary:drfrank@127.0.0.1:43509/ > log/8/stdout381 2> log/8/stderr381 381: 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 381 === 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 ==93208== ==93208== Process terminating with default action of signal 4 (SIGILL) ==93208== Illegal opcode at address 0x10B06D ==93208== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93208== by 0x10B06D: main (tool_main.c:234) === End of file valgrind381 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/1/valgrind384 ../src/curl -q --output log/1/curl384.out --include --trace-ascii log/1/trace384 --trace-time --json @- http://127.0.0.1:39283/384 -H "Accept: foobar/*" log/1/stdout384 2> log/1/stderr384 384: 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 384 === Start of file server.cmd Testnum 384 === End of file server.cmd === Start of file stdin-for-384 { "drink": "coffe" } === End of file stdin-for-384 === Start of file valgrind384 ==93237== ==93237== Process terminating with default action of signal 4 (SIGILL) ==93237== Illegal opcode at address 0x10B06D ==93237== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93237== by 0x10B06D: main (tool_main.c:234) === End of file valgrind384 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/5/valgrind385 ../src/curl -q --output log/5/curl385.out --include --trace-ascii log/5/trace385 --trace-time --json '{ "drink": "coffe",' --json ' "crunch": "cookie" }' http://127.0.0.1:33519/385 -H "Content-Type: drinks/hot" > log/5/stdout385 2> log/5/stderr385 385: 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 385 === Start of file server.cmd Testnum 385 === End of file server.cmd === Start of file valgrind385 ==93361== ==93361== Process terminating with default action of signal 4 (SIGILL) ==93361== Illegal opcode at address 0x10B06D ==93361== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93361== by 0x10B06D: main (tool_main.c:234) === End of file valgrind385 CMD (33792): ../libtool --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/valgrind389 ../src/curl -q --output log/6/curl389.out --include --trace-ascii log/6/trace389 --trace-time http://curlmachine.localhost:41583/389 > log/6/stdout389 2> log/6/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/10/valgrind386 ../src/curl -q --output log/10/curl386.out --include --trace-ascii log/10/trace386 --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:36145/386 --next http://127.0.0.1:36145/3860002 > log/10/stdout386 2> log/10/stderr386 CMD (33792): ../libtool --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/valgrind388 ../src/curl -q --include --trace-ascii log/11/trace388 --trace-time http://127.0.0.1:35843/3880001 -u testuser:testpass --digest http://127.0.0.1:35843/3880002 > log/11/stdout388 2> log/11/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/4/valgrind387 ../src/curl -q --output log/4/curl387.out --include --trace-ascii log/4/trace387 --trace-time http://127.0.0.1:41947/387 -sS --tr-encoding > log/4/stdout387 2> log/4/stderr387 387: stderr FAILED: --- log/4/check-expected 2024-05-23 11:16:04.783407722 +0200 +++ log/4/check-generated 2024-05-23 11:16:04.783407722 +0200 @@ -1 +0,0 @@ -curl: (61) Reject response due to more than 5 content encodings[LF] == Contents of files in the log/4/ dir after test 387 === Start of file check-expected curl: (61) Reject response due to more than 5 content encodings[LF] === End of file check-expected === Start of file server.cmd Testnum 387 === End of file server.cmd === Start of file valgrind387 ==93420== ==93420== Process terminating with default action of signal 4 (SIGILL) ==93420== Illegal opcode at address 0x10B06D ==93420== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93420== by 0x10B06D: main (tool_main.c:234) === End of file valgrind387 prechecked /usr/bin/perl -e "print 'Test requires default test server host' if ( '127.0.0.1' ne '127.0.0.1' );" 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/6/valgrind389 ../src/curl -q --output log/6/curl389.out --include --trace-ascii log/6/trace389 --trace-time http://curlmachine.localhost:41583/389 > log/6/stdout389 2> log/6/stderr389 389: 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 389 === Start of file server.cmd Testnum 389 === End of file server.cmd === Start of file valgrind389 ==93447== ==93447== Process terminating with default action of signal 4 (SIGILL) ==93447== Illegal opcode at address 0x10B06D ==93447== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93447== by 0x10B06D: main (tool_main.c:234) === End of file valgrind389 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/10/valgrind386 ../src/curl -q --output log/10/curl386.out --include --trace-ascii log/10/trace386 --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:36145/386 --next http://127.0.0.1:36145/3860002 > log/10/stdout386 2> log/10/stderr386 386: 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 386 === Start of file server.cmd Testnum 386 === End of file server.cmd === Start of file valgrind386 ==93410== ==93410== Process terminating with default action of signal 4 (SIGILL) ==93410== Illegal opcode at address 0x10B06D ==93410== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93410== by 0x10B06D: 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/12/valgrind390 ../src/curl -q --include --trace-ascii log/12/trace390 --trace-time http://127.0.0.1:44175/390 file://localhost/startdir/src/build-curl/tests/log/12/test390.txt ftp://127.0.0.1:41005/3900002 --parallel -o log/12/390.a -o log/12/390.b -o log/12/390.c > log/12/stdout390 2> log/12/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/11/valgrind388 ../src/curl -q --include --trace-ascii log/11/trace388 --trace-time http://127.0.0.1:35843/3880001 -u testuser:testpass --digest http://127.0.0.1:35843/3880002 > log/11/stdout388 2> log/11/stderr388 388: stdout FAILED: --- log/11/check-expected 2024-05-23 11:16:04.833408748 +0200 +++ log/11/check-generated 2024-05-23 11:16:04.833408748 +0200 @@ -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/11/ 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 server.cmd Testnum 388 === End of file server.cmd === Start of file valgrind388 ==93449== ==93449== Process terminating with default action of signal 4 (SIGILL) ==93449== Illegal opcode at address 0x10B06D ==93449== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93449== by 0x10B06D: main (tool_main.c:234) === End of file valgrind388 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/12/valgrind390 ../src/curl -q --include --trace-ascii log/12/trace390 --trace-time http://127.0.0.1:44175/390 file://localhost/startdir/src/build-curl/tests/log/12/test390.txt ftp://127.0.0.1:41005/3900002 --parallel -o log/12/390.a -o log/12/390.b -o log/12/390.c > log/12/stdout390 2> log/12/stderr390 curl returned 132, when expecting 0 390: exit FAILED == Contents of files in the log/12/ dir after test 390 === Start of file server.cmd Testnum 390 === End of file server.cmd === 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!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/7/valgrind391 ../src/curl -q --output log/7/curl391.out --include --trace-ascii log/7/trace391 --trace-time http://127.0.0.1:35853/../../391 --path-as-is -L > log/7/stdout391 2> log/7/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/2/valgrind393 ../src/curl -q --output log/2/curl393.out --include --trace-ascii log/2/trace393 --trace-time http://127.0.0.1:44205/393 --max-filesize 2000000 > log/2/stdout393 2> log/2/stderr393 CMD (33792): ../libtool --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/valgrind392 ../src/curl -q --output log/3/curl392.out --include --trace-ascii log/3/trace392 --trace-time http://localhost:46313/392 -b none http://localhost:46313/392 > log/3/stdout392 2> log/3/stderr392 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!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!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 ==93467== ==93467== Process terminating with default action of signal 4 (SIGILL) ==93467== Illegal opcode at address 0x10B06D ==93467== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93467== by 0x10B06D: main (tool_main.c:234) === End of file valgrind390 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/7/valgrind391 ../src/curl -q --output log/7/curl391.out --include --trace-ascii log/7/trace391 --trace-time http://127.0.0.1:35853/../../391 --path-as-is -L > log/7/stdout391 2> log/7/stderr391 391: 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 391 === Start of file server.cmd Testnum 391 === End of file server.cmd === Start of file valgrind391 ==93512== ==93512== Process terminating with default action of signal 4 (SIGILL) ==93512== Illegal opcode at address 0x10B06D ==93512== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93512== by 0x10B06D: main (tool_main.c:234) === End of file valgrind391 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/2/valgrind393 ../src/curl -q --output log/2/curl393.out --include --trace-ascii log/2/trace393 --trace-time http://127.0.0.1:44205/393 --max-filesize 2000000 > log/2/stdout393 2> log/2/stderr393 393: 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 393 === Start of file server.cmd Testnum 393 === End of file server.cmd === 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/9/valgrind394 ../src/curl -q --output log/9/curl394.out --include --trace-ascii log/9/trace394 --trace-time http://127.0.0.1:40247/394 > log/9/stdout394 2> log/9/stderr394 CMD (33792): ../libtool --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/valgrind395 ../src/curl -q --output log/8/curl395.out --include --trace-ascii log/8/trace395 --trace-time http://127.0.0.1:33791/395 > log/8/stdout395 2> log/8/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/1/valgrind396 ../src/curl -q --output log/1/curl396.out --include --trace-ascii log/1/trace396 --trace-time http://127.0.0.1:39283/396 --compressed > log/1/stdout396 2> log/1/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/5/valgrind397 ../src/curl -q --output log/5/curl397.out --include --trace-ascii log/5/trace397 --trace-time http://127.0.0.1:33519/397 --compressed > log/5/stdout397 2> log/5/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/11/valgrind405 ../src/curl -q --output log/11/curl405.out --include --trace-ascii log/11/trace405 --trace-time -m 5 -k ftps://127.0.0.1:36091/path/to/file/405 > log/11/stdout405 2> log/11/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/4/valgrind398 ../src/curl -q --output log/4/curl398.out --include --trace-ascii log/4/trace398 --trace-time http://127.0.0.1:41947/398 > log/4/stdout398 2> log/4/stderr398 CMD (33792): ../libtool --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/valgrind399 ../src/curl -q --output log/6/curl399.out --include --trace-ascii log/6/trace399 --trace-time -K log/6/input%TESTNUM > log/6/stdout399 2> log/6/stderr399 f file valgrind393 ==93714== ==93714== Process terminating with default action of signal 4 (SIGILL) ==93714== Illegal opcode at address 0x10B06D ==93714== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93714== by 0x10B06D: main (tool_main.c:234) === End of file valgrind393 setenv TZ = GMT prechecked /usr/bin/perl -e "print 'Test requires default test server host' if ( '127.0.0.1' ne '127.0.0.1' );" 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/3/valgrind392 ../src/curl -q --output log/3/curl392.out --include --trace-ascii log/3/trace392 --trace-time http://localhost:46313/392 -b none http://localhost:46313/392 > log/3/stdout392 2> log/3/stderr392 392: 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 392 === Start of file server.cmd Testnum 392 === End of file server.cmd === Start of file valgrind392 ==93629== ==93629== Process terminating with default action of signal 4 (SIGILL) ==93629== Illegal opcode at address 0x10B06D ==93629== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93629== by 0x10B06D: main (tool_main.c:234) === End of file valgrind392 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-time http://127.0.0.1:40247/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 server.cmd Testnum 394 === End of file server.cmd === Start of file valgrind394 ==93812== ==93812== Process terminating with default action of signal 4 (SIGILL) ==93812== Illegal opcode at address 0x10B06D ==93812== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93812== by 0x10B06D: main (tool_main.c:234) === End of file valgrind394 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/8/valgrind395 ../src/curl -q --output log/8/curl395.out --include --trace-ascii log/8/trace395 --trace-time http://127.0.0.1:33791/395 > log/8/stdout395 2> log/8/stderr395 395: 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 395 === Start of file server.cmd Testnum 395 === End of file server.cmd === Start of file valgrind395 ==93833== ==93833== Process terminating with default action of signal 4 (SIGILL) ==93833== Illegal opcode at address 0x10B06D ==93833== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93833== by 0x10B06D: main (tool_main.c:234) === End of file valgrind395 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/1/valgrind396 ../src/curl -q --output log/1/curl396.out --include --trace-ascii log/1/trace396 --trace-time http://127.0.0.1:39283/396 --compressed > log/1/stdout396 2> log/1/stderr396 396: 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 396 === Start of file server.cmd Testnum 396 === End of file server.cmd === Start of file valgrind396 ==93900== ==93900== Process terminating with default action of signal 4 (SIGILL) ==93900== Illegal opcode at address 0x10B06D ==93900== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93900== by 0x10B06D: main (tool_main.c:234) === End of file valgrind396 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/5/valgrind397 ../src/curl -q --output log/5/curl397.out --include --trace-ascii log/5/trace397 --trace-time http://127.0.0.1:33519/397 --compressed > log/5/stdout397 2> log/5/stderr397 397: 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 397 === Start of file server.cmd Testnum 397 === End of file server.cmd === Start of file valgrind397 ==93957== ==93957== Process terminating with default action of signal 4 (SIGILL) ==93957== Illegal opcode at address 0x10B06D ==93957== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93957== by 0x10B06D: main (tool_main.c:234) === End of file valgrind397 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/11/valgrind405 ../src/curl -q --output log/11/curl405.out --include --trace-ascii log/11/trace405 --trace-time -m 5 -k ftps://127.0.0.1:36091/path/to/file/405 > log/11/stdout405 2> log/11/stderr405 curl returned 132, when expecting 35,28 405: exit FAILED == Contents of files in the log/11/ dir after test 405 === Start of file server.cmd Testnum 405 === End of file server.cmd === Start of file valgrind405 ==94115== ==94115== Process terminating with default action of signal 4 (SIGILL) ==94115== Illegal opcode at address 0x10B06D ==94115== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94115== by 0x10B06D: main (tool_main.c:234) === End of file valgrind405 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/4/valgrind398 ../src/curl -q --output log/4/curl398.out --include --trace-ascii log/4/trace398 --trace-time http://127.0.0.1:41947/398 > log/4/stdout398 2> log/4/stderr398 398: 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 398 === Start of file server.cmd Testnum 398 === End of file server.cmd === Start of file valgrind398 ==93962== ==93962== Process terminating with default action of signal 4 (SIGILL) ==93962== Illegal opcode at address 0x10B06D ==93962== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==93962== by 0x10B06D: main (tool_main.c:234) === End of file valgrind398 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/6/valgrind399 ../src/curl -q --output log/6/curl399.out --include --trace-ascii log/6/trace399 --trace-time -K log/6/input%TESTNUM > log/6/stdout399 2> log/6/stderr399 curl returned 132, when expecting 3 399: exit FAILED == Contents of files in the log/6/ dir after test 399 === Start of file input%TESTNUM url = http://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (33792): ../libtool --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/valgrind402 ../src/curl -q --output log/10/curl402.out --include --trace-ascii log/10/trace402 --trace-time -k --ftp-ssl-reqd ftp://127.0.0.1:33661/402 > log/10/stdout402 2> log/10/stderr402 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/399 === End of file input%TESTNUM === Start of file server.cmd Testnum 399 === End of file server.cmd === Start of file valgrind399 ==94012== ==94012== Process terminating with default action of signal 4 (SIGILL) ==94012== Illegal opcode at address 0x10B06D ==94012== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94012== by 0x10B06D: main (tool_main.c:234) === End of file valgrind399 test 0402...[FTP SSL required on non-SSL 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/7/valgrind411 ../src/curl -q --output log/7/curl411.out --include --trace-ascii log/7/trace411 --trace-time -K log/7/missing http://localhost > log/7/stdout411 2> log/7/stderr411 er] ../libtool --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/valgrind402 ../src/curl -q --output log/10/curl402.out --include --trace-ascii log/10/trace402 --trace-time -k --ftp-ssl-reqd ftp://127.0.0.1:33661/402 > log/10/stdout402 2> log/10/stderr402 402: 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 402 === Start of file server.cmd Testnum 402 === End of file server.cmd === Start of file valgrind402 ==94049== ==94049== Process terminating with default action of signal 4 (SIGILL) ==94049== Illegal opcode at address 0x10B06D ==94049== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94049== by 0x10B06D: main (tool_main.c:234) === End of file valgrind402 CMD (33792): ../libtool --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/valgrind416 ../src/curl -q --output log/2/curl416.out --include --trace-ascii log/2/trace416 --trace-time --ignore-content-length ftp://127.0.0.1:42239/416 > log/2/stdout416 2> log/2/stderr416 CMD (33792): ../libtool --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/valgrind415 ../src/curl -q --output log/12/curl415.out --include --trace-ascii log/12/trace415 --trace-time http://127.0.0.1:44175/415 > log/12/stdout415 2> log/12/stderr415 CMD (33792): ../libtool --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/valgrind418 ../src/curl -q --output log/3/curl418.out --include --trace-ascii log/3/trace418 --trace-time http://127.0.0.1:46313/418 -sS --tr-encoding > log/3/stdout418 2> log/3/stderr418 * 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/7/valgrind411 ../src/curl -q --output log/7/curl411.out --include --trace-ascii log/7/trace411 --trace-time -K log/7/missing http://localhost > log/7/stdout411 2> log/7/stderr411 411: stderr FAILED: --- log/7/check-expected 2024-05-23 11:16:05.503422501 +0200 +++ log/7/check-generated 2024-05-23 11:16:05.503422501 +0200 @@ -1,3 +0,0 @@ -curl: cannot read config from 'log/7/missing'[LF] -curl: option -K: error encountered when reading a file[LF] -curl: try 'curl --help' for more information[LF] == Contents of files in the log/7/ dir after test 411 === Start of file check-expected curl: cannot read config from 'log/7/missing'[LF] curl: option -K: error encountered when reading a file[LF] curl: try 'curl --help' for more information[LF] === End of file check-expected === Start of file server.cmd Testnum 411 === End of file server.cmd === Start of file valgrind411 ==94191== ==94191== Process terminating with default action of signal 4 (SIGILL) ==94191== Illegal opcode at address 0x10B06D ==94191== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94191== by 0x10B06D: main (tool_main.c:234) === End of file valgrind411 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/2/valgrind416 ../src/curl -q --output log/2/curl416.out --include --trace-ascii log/2/trace416 --trace-time --ignore-content-length ftp://127.0.0.1:42239/416 > log/2/stdout416 2> log/2/stderr416 416: 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 416 === Start of file server.cmd RETRSIZE 7 Testnum 416 === End of file server.cmd === Start of file valgrind416 ==94213== ==94213== Process terminating with default action of signal 4 (SIGILL) ==94213== Illegal opcode at address 0x10B06D ==94213== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94213== by 0x10B06D: main (tool_main.c:234) === End of file valgrind416 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/12/valgrind415 ../src/curl -q --output log/12/curl415.out --include --trace-ascii log/12/trace415 --trace-time http://127.0.0.1:44175/415 > log/12/stdout415 2> log/12/stderr415 415: 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 415 === Start of file server.cmd Testnum 415 === End of file server.cmd === Start of file valgrind415 ==94192== ==94192== Process terminating with default action of signal 4 (SIGILL) ==94192== Illegal opcode at address 0x10B06D ==94192== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94192== by 0x10B06D: 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/9/valgrind419 ../src/curl -q --output log/9/curl419.out --include --trace-ascii log/9/trace419 --trace-time http://127.0.0.1:40247/419 -D loggg/save-here/fails > log/9/stdout419 2> log/9/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/8/valgrind420 ../src/curl -q --output log/8/curl420.out --include --trace-ascii log/8/trace420 --trace-time http://127.0.0.1:33791/func_test/del_cookie -b log/8/cookie420 -c log/8/save420 > log/8/stdout420 2> log/8/stderr420 CMD (33792): ../libtool --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/valgrind421 ../src/curl -q --output log/1/curl421.out --include --trace-ascii log/1/trace421 --trace-time http://127.0.0.1:39283/421 -w '%{stderr}%{header_json}\n' -s > log/1/stdout421 2> log/1/stderr421 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/3/valgrind418 ../src/curl -q --output log/3/curl418.out --include --trace-ascii log/3/trace418 --trace-time http://127.0.0.1:46313/418 -sS --tr-encoding > log/3/stdout418 2> log/3/stderr418 418: stderr FAILED: --- log/3/check-expected 2024-05-23 11:16:05.546756723 +0200 +++ log/3/check-generated 2024-05-23 11:16:05.546756723 +0200 @@ -1 +0,0 @@ -curl: (61) Reject response due to more than 5 content encodings[LF] == Contents of files in the log/3/ dir after test 418 === Start of file check-expected curl: (61) Reject response due to more than 5 content encodings[LF] === End of file check-expected === Start of file server.cmd Testnum 418 === End of file server.cmd === Start of file valgrind418 ==94232== ==94232== Process terminating with default action of signal 4 (SIGILL) ==94232== Illegal opcode at address 0x10B06D ==94232== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94232== by 0x10B06D: main (tool_main.c:234) === End of file valgrind418 test 0419...[--dump-header to file that cannot be 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/9/valgrind419 ../src/curl -q --output log/9/curl419.out --include --trace-ascii log/9/trace419 --trace-time http://127.0.0.1:40247/419 -D loggg/save-here/fails > log/9/stdout419 2> log/9/stderr419 curl returned 132, when expecting 23 419: exit FAILED == Contents of files in the log/9/ dir after test 419 === Start of file server.cmd Testnum 419 === End of file server.cmd === Start of file valgrind419 ==94397== ==94397== Process terminating with default action of signal 4 (SIGILL) ==94397== Illegal opcode at address 0x10B06D ==94397== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94397== by 0x10B06D: main (tool_main.c:234) === End of file valgrind419 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/8/valgrind420 ../src/curl -q --output log/8/curl420.out --include --trace-ascii log/8/trace420 --trace-time http://127.0.0.1:33791/func_test/del_cookie -b log/8/cookie420 -c log/8/save420 > log/8/stdout420 2> log/8/stderr420 420: 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 420 === 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 server.cmd Testnum 420 === End of file server.cmd === Start of file valgrind420 ==94406== ==94406== Process terminating with default action of signal 4 (SIGILL) ==94406== Illegal opcode at address 0x10B06D ==94406== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94406== by 0x10B06D: main (tool_main.c:234) === End of file valgrind420 CMD (33792): ../libtool --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/valgrind422 ../src/curl -q --output log/5/curl422.out --include --trace-ascii log/5/trace422 --trace-time -O -I --next http://127.0.0.1:33519/422 > log/5/stdout422 2> log/5/stderr422 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/1/valgrind421 ../src/curl -q --output log/1/curl421.out --include --trace-ascii log/1/trace421 --trace-time http://127.0.0.1:39283/421 -w '%{stderr}%{header_json}\n' -s > log/1/stdout421 2> log/1/stderr421 421: stderr FAILED: --- log/1/check-expected 2024-05-23 11:16:05.846762883 +0200 +++ log/1/check-generated 2024-05-23 11:16:05.846762883 +0200 @@ -1,19 +0,0 @@ -{"server":["nginx"],[LF] -"date":["Tue, 07 Mar 2023 15:14:41 GMT"],[LF] -"content-type":["application/json"],[LF] -"content-length":["6"],[LF] -"vary":["Accept-Encoding","Accept-Encoding","Accept"],[LF] -"access-control-allow-origin":["*"],[LF] -"referrer-policy":["strict-origin-when-cross-origin","strict-origin-when-cross-origin"],[LF] -"access-control-allow-methods":["GET, POST, PUT, DELETE, OPTIONS"],[LF] -"access-control-max-age":["1728000"],[LF] -"access-control-allow-headers":["Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS"],[LF] -"access-control-expose-headers":[""],[LF] -"etag":["W/\"2678f9ab2ba550d164e7cc014aefd31e\""],[LF] -"cache-control":["max-age=0, private, must-revalidate"],[LF] -"x-request-id":["375b343b3d2ecf9b442c0daf00fc4a9a"],[LF] -"strict-transport-security":["max-age=31536000; includeSubDomains"],[LF] -"x-content-type-options":["nosniff"],[LF] -"x-xss-protection":["1; mode=block"],[LF] -"feature-policy":["accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'"][LF] -}[LF] == Contents of files in the log/1/ dir after test 421 === Start of file check-expected {"server":["nginx"],[LF] "date":["Tue, 07 Mar 2023 15:14:41 GMT"],[LF] "content-type":["application/json"],[LF] "content-length":["6"],[LF] "vary":["Accept-Encoding","Accept-Encoding","Accept"],[LF] "access-control-allow-origin":["*"],[LF] "referrer-policy":["strict-origin-when-cross-origin","strict-origin-when-cross-origin"],[LF] "access-control-allow-methods":["GET, POST, PUT, DELETE, OPTIONS"],[LF] "access-control-max-age":["1728000"],[LF] "access-control-allow-headers":["Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS"],[LF] "access-control-expose-headers":[""],[LF] "etag":["W/\"2678f9ab2ba550d164e7cc014aefd31e\""],[LF] "cache-control":["max-age=0, private, must-revalidate"],[LF] "x-request-id":["375b343b3d2ecf9b442c0daf00fc4a9a"],[LF] "strict-transport-security":["max-age=31536000; includeSubDomains"],[LF] "x-content-type-options":["nosniff"],[LF] "x-xss-protection":["1; mode=block"],[LF] "feature-policy":["accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'"][LF] }[LF] === End of file check-expected === Start of file server.cmd Testnum 421 === End of file server.cmd === Start of file valgrind421 ==94454== ==94454== Process terminating with default action of signal 4 (SIGILL) ==94454== Illegal opcode at address 0x10B06D ==94454== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94454== by 0x10B06D: 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/11/valgrind423 ../src/curl -q --trace-ascii log/11/trace423 --trace-time "http://uuuu:pppp@127.0.0.1:35843/423?qqqq#ffff" "h55p://hello2000:1/423?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:35843/423?qqqq#ffff" -w '%{url.host}+%{url.path}+%{url.scheme}+%{url.user}+%{url.password}+%{url.port}+%{url.query}+%{url.fragment}\n' > log/11/stdout423 2> log/11/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/5/valgrind422 ../src/curl -q --output log/5/curl422.out --include --trace-ascii log/5/trace422 --trace-time -O -I --next http://127.0.0.1:33519/422 > log/5/stdout422 2> log/5/stderr422 422: stderr FAILED: --- log/5/check-expected 2024-05-23 11:16:05.980098953 +0200 +++ log/5/check-generated 2024-05-23 11:16:05.980098953 +0200 @@ -1,3 +0,0 @@ -curl: missing URL before --next[LF] -curl: option --next: is badly used here[LF] -curl: try 'curl --help' for more information[LF] == Contents of files in the log/5/ dir after test 422 === Start of file check-expected curl: missing URL before --next[LF] curl: option --next: is badly used here[LF] curl: try 'curl --help' for more information[LF] === End of file check-expected === Start of file server.cmd Testnum 422 === End of file server.cmd === Start of file valgrind422 ==94548== ==94548== Process terminating with default action of signal 4 (SIGILL) ==94548== Illegal opcode at address 0x10B06D ==94548== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94548== by 0x10B06D: main (tool_main.c:234) === End of file valgrind422 CMD (33792): ../libtool --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/valgrind425 ../src/curl -q --output log/6/curl425.out --include --trace-ascii log/6/trace425 --trace-time -T log/6/up425 http://127.0.0.1:41583/425/?fullpath > log/6/stdout425 2> log/6/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/4/valgrind424 ../src/curl -q --trace-ascii log/4/trace424 --trace-time "http://uuuu:pppp@127.0.0.1:41947/424?qqqq#ffff" "h55p://hello2000:1/424?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:41947/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:41947/ -L > log/4/stdout424 2> log/4/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/11/valgrind423 ../src/curl -q --trace-ascii log/11/trace423 --trace-time "http://uuuu:pppp@127.0.0.1:35843/423?qqqq#ffff" "h55p://hello2000:1/423?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:35843/423?qqqq#ffff" -w '%{url.host}+%{url.path}+%{url.scheme}+%{url.user}+%{url.password}+%{url.port}+%{url.query}+%{url.fragment}\n' > log/11/stdout423 2> log/11/stderr423 423: stdout FAILED: --- log/11/check-expected 2024-05-23 11:16:06.013432971 +0200 +++ log/11/check-generated 2024-05-23 11:16:06.013432971 +0200 @@ -1,4 +0,0 @@ -127.0.0.1+/423+http+uuuu+pppp+35843+qqqq+ffff[LF] -hello2000+/423+h55p+++1+qqqq+ffff[LF] -+++++++[LF] -127.0.0.1+/423+http+u22u+p22p+35843+qqqq+ffff[LF] == Contents of files in the log/11/ dir after test 423 === Start of file check-expected 127.0.0.1+/423+http+uuuu+pppp+35843+qqqq+ffff[LF] hello2000+/423+h55p+++1+qqqq+ffff[LF] +++++++[LF] 127.0.0.1+/423+http+u22u+p22p+35843+qqqq+ffff[LF] === End of file check-expected === Start of file server.cmd Testnum 423 === End of file server.cmd === Start of file valgrind423 ==94594== ==94594== Process terminating with default action of signal 4 (SIGILL) ==94594== Illegal opcode at address 0x10B06D ==94594== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94594== by 0x10B06D: main (tool_main.c:234) === End of file valgrind423 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/6/valgrind425 ../src/curl -q --output log/6/curl425.out --include --trace-ascii log/6/trace425 --trace-time -T log/6/up425 http://127.0.0.1:41583/425/?fullpath > log/6/stdout425 2> log/6/stderr425 425: 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 425 === Start of file server.cmd Testnum 425 === End of file server.cmd === Start of file up425 content === End of file up425 === Start of file valgrind425 ==94615== ==94615== Process terminating with default action of signal 4 (SIGILL) ==94615== Illegal opcode at address 0x10B06D ==94615== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94615== by 0x10B06D: main (tool_main.c:234) === End of file valgrind425 CMD (33792): ../libtool --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/valgrind426 ../src/curl -q --output log/10/curl426.out --include --trace-ascii log/10/trace426 --trace-time http://127.0.0.1:36145/426 -d foobar -C 3 > log/10/stdout426 2> log/10/stderr426 CMD (33792): ../libtool --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/valgrind427 ../src/curl -q --output log/7/curl427.out --include --trace-ascii log/7/trace427 --trace-time http://127.0.0.1:35853/427 -c log/7/cookies427 -L > log/7/stdout427 2> log/7/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/2/valgrind428 ../src/curl -q --output log/2/curl428.out --include --trace-ascii log/2/trace428 --trace-time http://127.0.0.1:44205/428 -K log/2/cmd > log/2/stdout428 2> log/2/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/12/valgrind429 ../src/curl -q --output log/12/curl429.out --include --trace-ascii log/12/trace429 --trace-time http://127.0.0.1:44175/429 -K log/12/cmd > log/12/stdout429 2> log/12/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/3/valgrind430 ../src/curl -q --output log/3/curl430.out --include --trace-ascii log/3/trace430 --trace-time -K log/3/config430-a -K log/3/config430-b -K log/3/config430-c > log/3/stdout430 2> log/3/stderr430 CMD (33792): ../libtool --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/valgrind432 ../src/curl -q --output log/8/curl432.out --include --trace-ascii log/8/trace432 --trace-time -K log/8/config432 > log/8/stdout432 2> log/8/stderr432 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/4/valgrind424 ../src/curl -q --trace-ascii log/4/trace424 --trace-time "http://uuuu:pppp@127.0.0.1:41947/424?qqqq#ffff" "h55p://hello2000:1/424?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:41947/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:41947/ -L > log/4/stdout424 2> log/4/stderr424 424: stdout FAILED: --- log/4/check-expected 2024-05-23 11:16:06.056767194 +0200 +++ log/4/check-generated 2024-05-23 11:16:06.056767194 +0200 @@ -1,4 +0,0 @@ -anotherhost.example+/4240002+http+uuuu+pppp+2023+moo.html+[LF] -hello2000+/424+h55p+++1+qqqq+ffff[LF] -+++++++[LF] -anotherhost.example+/4240002+http+u22u+p22p+2023+moo.html+[LF] == Contents of files in the log/4/ dir after test 424 === Start of file check-expected anotherhost.example+/4240002+http+uuuu+pppp+2023+moo.html+[LF] hello2000+/424+h55p+++1+qqqq+ffff[LF] +++++++[LF] anotherhost.example+/4240002+http+u22u+p22p+2023+moo.html+[LF] === End of file check-expected === Start of file server.cmd Testnum 424 === End of file server.cmd === Start of file valgrind424 ==94613== ==94613== Process terminating with default action of signal 4 (SIGILL) ==94613== Illegal opcode at address 0x10B06D ==94613== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94613== by 0x10B06D: main (tool_main.c:234) === End of file valgrind424 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/10/valgrind426 ../src/curl -q --output log/10/curl426.out --include --trace-ascii log/10/trace426 --trace-time http://127.0.0.1:36145/426 -d foobar -C 3 > log/10/stdout426 2> log/10/stderr426 curl returned 132, when expecting 2 426: exit FAILED == Contents of files in the log/10/ dir after test 426 === Start of file server.cmd Testnum 426 === End of file server.cmd === Start of file valgrind426 ==94681== ==94681== Process terminating with default action of signal 4 (SIGILL) ==94681== Illegal opcode at address 0x10B06D ==94681== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94681== by 0x10B06D: 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/7/valgrind427 ../src/curl -q --output log/7/curl427.out --include --trace-ascii log/7/trace427 --trace-time http://127.0.0.1:35853/427 -c log/7/cookies427 -L > log/7/stdout427 2> log/7/stderr427 427: 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 427 === Start of file server.cmd Testnum 427 === End of file server.cmd === Start of file valgrind427 ==94769== ==94769== Process terminating with default action of signal 4 (SIGILL) ==94769== Illegal opcode at address 0x10B06D ==94769== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94769== by 0x10B06D: 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/2/valgrind428 ../src/curl -q --output log/2/curl428.out --include --trace-ascii log/2/trace428 --trace-time http://127.0.0.1:44205/428 -K log/2/cmd > log/2/stdout428 2> log/2/stderr428 428: 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 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 server.cmd Testnum 428 === End of file server.cmd === Start of file valgrind428 ==94775== ==94775== Process terminating with default action of signal 4 (SIGILL) ==94775== Illegal opcode at address 0x10B06D ==94775== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94775== by 0x10B06D: main (tool_main.c:234) === End of file valgrind428 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/12/valgrind429 ../src/curl -q --output log/12/curl429.out --include --trace-ascii log/12/trace429 --trace-time http://127.0.0.1:44175/429 -K log/12/cmd > log/12/stdout429 2> log/12/stderr429 429: 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 429 === Start of file cmd --expand-data {{FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}} === End of file cmd === Start of file server.cmd Testnum 429 === End of file server.cmd === Start of file valgrind429 ==94779== ==94779== Process terminating with default action of signal 4 (SIGILL) ==94779== Illegal opcode at address 0x10B06D ==94779== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94779== by 0x10B06D: main (tool_main.c:234) === End of file valgrind429 test 0430...[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/3/valgrind430 ../src/curl -q --output log/3/curl430.out --include --trace-ascii log/3/trace430 --trace-time -K log/3/config430-a -K log/3/config430-b -K log/3/config430-c > log/3/stdout430 2> log/3/stderr430 430: 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 430 === Start of file config430-a --next url = 127.0.0.1:46313/4300001 header = "a: a" data = "a" === End of file config430-a === Start of file config430-b --next url = 127.0.0.1:46313/4300002 header = "b: b" data = "b" === End of file config430-b === Start of file config430-c --next url = 127.0.0.1:46313/4300003 header = "c: c" data = "c" === End of file config430-c === Start of file server.cmd Testnum 430 === End of file server.cmd === Start of file valgrind430 ==94922== ==94922== Process terminating with default action of signal 4 (SIGILL) ==94922== Illegal opcode at address 0x10B06D ==94922== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==94922== by 0x10B06D: main (tool_main.c:234) === End of file valgrind430 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/8/valgrind432 ../src/curl -q --output log/8/curl432.out --include --trace-ascii log/8/trace432 --trace-time -K log/8/config432 > log/8/stdout432 2> log/8/stderr432 432: 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 432 === Start of file config432 --next url = 127.0.0.1:33791/4320001 header = "a: 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/9/valgrind431 ../src/curl -q --output log/9/curl431.out --include --trace-ascii log/9/trace431 --trace-time -K log/9/config431-a -K log/9/config431-b --next -d c 127.0.0.1:40247/4310003 -H "c: c" > log/9/stdout431 2> log/9/stderr431 CMD (33792): ../libtool --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/valgrind434 ../src/curl -q --output log/1/curl434.out --include --trace-ascii log/1/trace434 --trace-time -K log/1/config434 > log/1/stdout434 2> log/1/stderr434 CMD (33792): ../libtool --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/valgrind435 ../src/curl -q --include --trace-ascii log/5/trace435 --trace-time http://127.0.0.1:33519/435 http://127.0.0.1:33519/435 -w 'local port == %{local_port}\nlocal ip == %{local_ip}\nremote_ip == %{remote_ip}\nremote_port == %{remote_port}\n' > log/5/stdout435 2> log/5/stderr435 " data = "a" --next url = 127.0.0.1:33791/4320002 header = "b: b" data = "b" config = "log/8/config432-c" === End of file config432 === Start of file config432-c --next url = 127.0.0.1:33791/4320003 header = "c: c" data = "c" === End of file config432-c === Start of file server.cmd Testnum 432 === End of file server.cmd === Start of file valgrind432 ==95017== ==95017== Process terminating with default action of signal 4 (SIGILL) ==95017== Illegal opcode at address 0x10B06D ==95017== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95017== by 0x10B06D: main (tool_main.c:234) === End of file valgrind432 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/9/valgrind431 ../src/curl -q --output log/9/curl431.out --include --trace-ascii log/9/trace431 --trace-time -K log/9/config431-a -K log/9/config431-b --next -d c 127.0.0.1:40247/4310003 -H "c: c" > log/9/stdout431 2> log/9/stderr431 431: 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 431 === Start of file config431-a --next url = 127.0.0.1:40247/4310001 header = "a: a" data = "a" === End of file config431-a === Start of file config431-b --next url = 127.0.0.1:40247/4310002 header = "b: b" data = "b" === End of file config431-b === Start of file server.cmd Testnum 431 === End of file server.cmd === Start of file valgrind431 ==95022== ==95022== Process terminating with default action of signal 4 (SIGILL) ==95022== Illegal opcode at address 0x10B06D ==95022== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95022== by 0x10B06D: main (tool_main.c:234) === End of file valgrind431 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/1/valgrind434 ../src/curl -q --output log/1/curl434.out --include --trace-ascii log/1/trace434 --trace-time -K log/1/config434 > log/1/stdout434 2> log/1/stderr434 434: 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 434 === Start of file config434 url = 127.0.0.1:39283/434 === End of file config434 === Start of file server.cmd Testnum 434 === End of file server.cmd === Start of file valgrind434 ==95126== ==95126== Process terminating with default action of signal 4 (SIGILL) ==95126== Illegal opcode at address 0x10B06D ==95126== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95126== by 0x10B06D: 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/11/valgrind436 ../src/curl --output log/11/curl436.out --include --trace-ascii log/11/trace436 --trace-time 127.0.0.1:35843/436 > log/11/stdout436 2> log/11/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/4/valgrind441 ../src/curl -q --include --trace-ascii log/4/trace441 --trace-time -x http://127.0.0.1:41947 http://this.hsts.example/441 --hsts log/4/input441 -w '%{url_effective}\n' > log/4/stdout441 2> log/4/stderr441 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/5/valgrind435 ../src/curl -q --include --trace-ascii log/5/trace435 --trace-time http://127.0.0.1:33519/435 http://127.0.0.1:33519/435 -w 'local port == %{local_port}\nlocal ip == %{local_ip}\nremote_ip == %{remote_ip}\nremote_port == %{remote_port}\n' > log/5/stdout435 2> log/5/stderr435 435: stdout FAILED: --- log/5/check-expected 2024-05-23 11:16:06.610111883 +0200 +++ log/5/check-generated 2024-05-23 11:16:06.610111883 +0200 @@ -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 == 33519[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 == 33519[LF] == Contents of files in the log/5/ 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 == 33519[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 == 33519[LF] === End of file check-expected === Start of file server.cmd Testnum 435 === End of file server.cmd === Start of file valgrind435 ==95181== ==95181== Process terminating with default action of signal 4 (SIGILL) ==95181== Illegal opcode at address 0x10B06D ==95181== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95181== by 0x10B06D: main (tool_main.c:234) === End of file valgrind435 setenv CURL_HOME = /startdir/src/build-curl/tests/log/11 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/11/valgrind436 ../src/curl --output log/11/curl436.out --include --trace-ascii log/11/trace436 --trace-time 127.0.0.1:35843/436 > log/11/stdout436 2> log/11/stderr436 436: 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 436 === Start of file server.cmd Testnum 436 === End of file server.cmd === Start of file valgrind436 ==95194== ==95194== Process terminating with default action of signal 4 (SIGILL) ==95194== Illegal opcode at address 0x10B06D ==95194== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95194== by 0x10B06D: main (tool_main.c:234) === End of file valgrind436 CMD (33792): ../libtool --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/valgrind443 ../src/curl -q --output log/7/curl443.out --include --trace-ascii log/7/trace443 --trace-time http://attack.invalid:35853/a/b/443 -b log/7/cookie443 --resolve attack.invalid:35853:127.0.0.1 -L > log/7/stdout443 2> log/7/stderr443 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/4/valgrind441 ../src/curl -q --include --trace-ascii log/4/trace441 --trace-time -x http://127.0.0.1:41947 http://this.hsts.example/441 --hsts log/4/input441 -w '%{url_effective}\n' > log/4/stdout441 2> log/4/stderr441 441: stdout FAILED: --- log/4/check-expected 2024-05-23 11:16:06.680113321 +0200 +++ log/4/check-generated 2024-05-23 11:16:06.680113321 +0200 @@ -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/4/ 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 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 valgrind441 ==95283== ==95283== Process terminating with default action of signal 4 (SIGILL) ==95283== Illegal opcode at address 0x10B06D ==95283== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95283== by 0x10B06D: main (tool_main.c:234) === End of file valgrind441 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/7/valgrind443 ../src/curl -q --output log/7/curl443.out --include --trace-ascii log/7/trace443 --trace-time http://attack.invalid:35853/a/b/443 -b log/7/cookie443 --resolve attack.invalid:35853:127.0.0.1 -L > log/7/stdout443 2> log/7/stderr443 443: 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 443 === 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 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (33792): ../libtool --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/valgrind442 ../src/curl -q --output log/10/curl442.out --include --trace-ascii log/10/trace442 --trace-time http://attack.invalid:36145/a/b/442 -b log/10/cookie442 --resolve attack.invalid:36145:127.0.0.1 -L > log/10/stdout442 2> log/10/stderr442 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-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 server.cmd Testnum 443 === End of file server.cmd === Start of file valgrind443 ==95380== ==95380== Process terminating with default action of signal 4 (SIGILL) ==95380== Illegal opcode at address 0x10B06D ==95380== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95380== by 0x10B06D: 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/10/valgrind442 ../src/curl -q --output log/10/curl442.out --include --trace-ascii log/10/trace442 --trace-time http://attack.invalid:36145/a/b/442 -b log/10/cookie442 --resolve attack.invalid:36145:127.0.0.1 -L > log/10/stdout442 2> log/10/stderr442 442: 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 442 === 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 attacCMD (33792): ../libtool --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/valgrind440 ../src/curl -q --include --trace-ascii log/6/trace440 --trace-time -x http://127.0.0.1:41583 http://this.hsts.example./440 --hsts log/6/input440 -w '%{url_effective}\n' > log/6/stdout440 2> log/6/stderr440 k.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-large-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 server.cmd Testnum 442 === End of file server.cmd === Start of file valgrind442 ==95355== ==95355== Process terminating with default action of signal 4 (SIGILL) ==95355== Illegal opcode at address 0x10B06D ==95355== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95355== by 0x10B06D: main (tool_main.c:234) === End of file valgrind442 CMD (33792): ../libtool --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/valgrind448 ../src/curl -q --output log/12/curl448.out --include --trace-ascii log/12/trace448 --trace-time http://127.0.0.1:44175/448 -K log/12/cmd > log/12/stdout448 2> log/12/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/2/valgrind444 ../src/curl -q --output log/2/curl444.out --include --trace-ascii log/2/trace444 --trace-time http://attack.invalid:44205/a/b/444 -c log/2/cookie444 --resolve attack.invalid:44205:127.0.0.1 > log/2/stdout444 2> log/2/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/3/valgrind449 ../src/curl -q --output log/3/curl449.out --include --trace-ascii log/3/trace449 --trace-time http://127.0.0.1:46313/449 -K log/3/cmd > log/3/stdout449 2> log/3/stderr449 CMD (33792): ../libtool --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/valgrind450 ../src/curl -q --output log/8/curl450.out --include --trace-ascii log/8/trace450 --trace-time http://127.0.0.1:33791/450 --variable what@log/8/junk --expand-data "{{what:trim:url}}" > log/8/stdout450 2> log/8/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/9/valgrind451 ../src/curl -q --output log/9/curl451.out --include --trace-ascii log/9/trace451 --trace-time http://127.0.0.1:40247/451 --variable what@log/9/junk --variable second=hello --variable second=again --expand-data "--{{what:trim:json}}22{{none}}--{{second}}{{what:trim:url}}" > log/9/stdout451 2> log/9/stderr451 CMD (33792): ../libtool --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/valgrind452 ../src/curl -q --output log/1/curl452.out --include --trace-ascii log/1/trace452 --trace-time http://127.0.0.1:39283/452 --variable what=hello --expand-data "--{{what:trim:super}}" > log/1/stdout452 2> log/1/stderr452 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/6/valgrind440 ../src/curl -q --include --trace-ascii log/6/trace440 --trace-time -x http://127.0.0.1:41583 http://this.hsts.example./440 --hsts log/6/input440 -w '%{url_effective}\n' > log/6/stdout440 2> log/6/stderr440 440: stdout FAILED: --- log/6/check-expected 2024-05-23 11:16:06.713447338 +0200 +++ log/6/check-generated 2024-05-23 11:16:06.713447338 +0200 @@ -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/6/ 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 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 valgrind440 ==95219== ==95219== Process terminating with default action of signal 4 (SIGILL) ==95219== Illegal opcode at address 0x10B06D ==95219== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95219== by 0x10B06D: main (tool_main.c:234) === End of file valgrind440 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/12/valgrind448 ../src/curl -q --output log/12/curl448.out --include --trace-ascii log/12/trace448 --trace-time http://127.0.0.1:44175/448 -K log/12/cmd > log/12/stdout448 2> log/12/stderr448 448: 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 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 server.cmd Testnum 448 === End of file server.cmd === Start of file valgrind448 ==95448== ==95448== Process terminating with default action of signal 4 (SIGILL) ==95448== Illegal opcode at address 0x10B06D ==95448== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95448== by 0x10B06D: 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/2/valgrind444 ../src/curl -q --output log/2/curl444.out --include --trace-ascii log/2/trace444 --trace-time http://attack.invalid:44205/a/b/444 -c log/2/cookie444 --resolve attack.invalid:44205:127.0.0.1 > log/2/stdout444 2> log/2/stderr444 444: 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 444 === Start of file server.cmd Testnum 444 === End of file server.cmd === Start of file valgrind444 ==95444== ==95444== Process terminating with default action of signal 4 (SIGILL) ==95444== Illegal opcode at address 0x10B06D ==95444== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95444== by 0x10B06D: 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/3/valgrind449 ../src/curl -q --output log/3/curl449.out --include --trace-ascii log/3/trace449 --trace-time http://127.0.0.1:46313/449 -K log/3/cmd > log/3/stdout449 2> log/3/stderr449 449: 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 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 server.cmd Testnum 449 === End of file server.cmd === Start of file valgrind449 ==95589== ==95589== Process terminating with default action of signal 4 (SIGILL) ==95589== Illegal opcode at address 0x10B06D ==95589== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95589== by 0x10B06D: main (tool_main.c:234) === End of file valgrind449 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/8/valgrind450 ../src/curl -q --output log/8/curl450.out --include --trace-ascii log/8/trace450 --trace-time http://127.0.0.1:33791/450 --variable what@log/8/junk --expand-data "{{what:trim:url}}" > log/8/stdout450 2> log/8/stderr450 450: 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 450 === 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 valgrind450 ==95647== ==95647== Process terminating with default action of signal 4 (SIGILL) ==95647== Illegal opcode at address 0x10B06D ==95647== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95647== by 0x10B06D: main (tool_main.c:234) === End of file valgrind450 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/9/valgrind451 ../src/curl -q --output log/9/curl451.out --include --trace-ascii log/9/trace451 --trace-time http://127.0.0.1:40247/451 --variable what@log/9/junk --variable second=hello --variable second=again --expand-data "--{{what:trim:json}}22{{none}}--{{second}}{{what:trim:url}}" > log/9/stdout451 2> log/9/stderr451 451: 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 451 === Start of file junk  === End of file junk === Start of file server.cmd Testnum 451 === End of file server.cmd === Start of file valgrind451 ==95650== ==95650== Process terminating with default action of signal 4 (SIGILL) ==95650== Illegal opcode at address 0x10B06D ==95650== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95650== by 0x10B06D: main (tool_main.c:234) === End of file valgrind451 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/1/valgrind452 ../src/curl -q --output log/1/curl452.out --include --trace-ascii log/1/trace452 --trace-time http://127.0.0.1:39283/452 --variable what=hello --expand-data "--{{what:trim:super}}" > log/1/stdout452 2> log/1/stderr452 curl returned 132, when expecting 2 452: exit FAILED == Contents of files in the log/1/ dir after test 452 === Start of file server.cmd Testnum 452 === End of file 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/5/valgrind453 ../src/curl -q --output log/5/curl453.out --include --trace-ascii log/5/trace453 --trace-time http://127.0.0.1:33519/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/11/valgrind454 ../src/curl -q --output log/11/curl454.out --include --trace-ascii log/11/trace454 --trace-time http://127.0.0.1:35843/454 --variable what=hello --expand-data "--{{what:trim,url}}" > log/11/stdout454 2> log/11/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/4/valgrind455 ../src/curl -q --output log/4/curl455.out --include --trace-ascii log/4/trace455 --trace-time --variable moby="Call me Ishmael" --expand-url "http://127.0.0.1:41947/{{moby:b64}}/455" > log/4/stdout455 2> log/4/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/7/valgrind456 ../src/curl -q --output log/7/curl456.out --include --trace-ascii log/7/trace456 --trace-time http://127.0.0.1:35853/456 --variable what@log/7/junk --expand-data "{{what}}" > log/7/stdout456 2> log/7/stderr456 CMD (33792): ../libtool --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/valgrind457 ../src/curl -q --output log/10/curl457.out --include --trace-ascii log/10/trace457 --trace-time http://127.0.0.1:36145/457 --max-filesize 143 > log/10/stdout457 2> log/10/stderr457 CMD (33792): ../libtool --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/valgrind458 ../src/curl -q --include --trace-ascii log/6/trace458 --trace-time http://127.0.0.1:41583/458 -K log/6/cmd > log/6/stdout458 2> log/6/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/2/valgrind460 ../src/curl -q --output log/2/curl460.out --include --trace-ascii log/2/trace460 --trace-time --expand-url > log/2/stdout460 2> log/2/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/12/valgrind459 ../src/curl -q --output log/12/curl459.out --include --trace-ascii log/12/trace459 --trace-time http://127.0.0.1:44175/459 --config log/12/config --silent > log/12/stdout459 2> log/12/stderr459 er.cmd === Start of file valgrind452 ==95748== ==95748== Process terminating with default action of signal 4 (SIGILL) ==95748== Illegal opcode at address 0x10B06D ==95748== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95748== by 0x10B06D: main (tool_main.c:234) === End of file valgrind452 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-time http://127.0.0.1:33519/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 junk  === End of file junk === Start of file server.cmd Testnum 453 === End of file server.cmd === Start of file valgrind453 ==95778== ==95778== Process terminating with default action of signal 4 (SIGILL) ==95778== Illegal opcode at address 0x10B06D ==95778== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95778== by 0x10B06D: 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/11/valgrind454 ../src/curl -q --output log/11/curl454.out --include --trace-ascii log/11/trace454 --trace-time http://127.0.0.1:35843/454 --variable what=hello --expand-data "--{{what:trim,url}}" > log/11/stdout454 2> log/11/stderr454 curl returned 132, when expecting 2 454: exit FAILED == Contents of files in the log/11/ dir after test 454 === Start of file server.cmd Testnum 454 === End of file server.cmd === Start of file valgrind454 ==95815== ==95815== Process terminating with default action of signal 4 (SIGILL) ==95815== Illegal opcode at address 0x10B06D ==95815== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95815== by 0x10B06D: main (tool_main.c:234) === End of file valgrind454 test 0455...[Variable using 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/4/valgrind455 ../src/curl -q --output log/4/curl455.out --include --trace-ascii log/4/trace455 --trace-time --variable moby="Call me Ishmael" --expand-url "http://127.0.0.1:41947/{{moby:b64}}/455" > log/4/stdout455 2> log/4/stderr455 455: 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 455 === Start of file server.cmd Testnum 455 === End of file server.cmd === Start of file valgrind455 ==95897== ==95897== Process terminating with default action of signal 4 (SIGILL) ==95897== Illegal opcode at address 0x10B06D ==95897== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95897== by 0x10B06D: 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/7/valgrind456 ../src/curl -q --output log/7/curl456.out --include --trace-ascii log/7/trace456 --trace-time http://127.0.0.1:35853/456 --variable what@log/7/junk --expand-data "{{what}}" > log/7/stdout456 2> log/7/stderr456 curl returned 132, when expecting 2 456: exit FAILED == Contents of files in the log/7/ dir after test 456 === Start of file junk hello === End of file junk === Start of file server.cmd Testnum 456 === End of file server.cmd === Start of file valgrind456 ==95910== ==95910== Process terminating with default action of signal 4 (SIGILL) ==95910== Illegal opcode at address 0x10B06D ==95910== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95910== by 0x10B06D: 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/10/valgrind457 ../src/curl -q --output log/10/curl457.out --include --trace-ascii log/10/trace457 --trace-time http://127.0.0.1:36145/457 --max-filesize 143 > log/10/stdout457 2> log/10/stderr457 457: 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 457 === Start of file server.cmd Testnum 457 === End of file server.cmd === Start of file valgrind457 ==95941== ==95941== Process terminating with default action of signal 4 (SIGILL) ==95941== Illegal opcode at address 0x10B06D ==95941== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95941== by 0x10B06D: 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/6/valgrind458 ../src/curl -q --include --trace-ascii log/6/trace458 --trace-time http://127.0.0.1:41583/458 -K log/6/cmd > log/6/stdout458 2> log/6/stderr458 458: 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 458 === Start of file cmd --variable %FUNVALUE --expand-output log/6/{{FUNVALUE}} === End of file cmd === Start of file server.cmd Testnum 458 === End of file server.cmd === Start of file valgrind458 ==95965== ==95965== Process terminating with default action of signal 4 (SIGILL) ==95965== Illegal opcode at address 0x10B06D ==95965== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==95965== by 0x10B06D: main (tool_main.c:234) === End of file valgrind458 * 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/2/valgrind460 ../src/curl -q --output log/2/curl460.out --include --trace-ascii log/2/trace460 --trace-time --expand-url > log/2/stdout460 2> log/2/stderr460 curl returned 132, when expecting 2 460: exit FAILED == Contents of files in the log/2/ dir after test 460 === Start of file server.cmd Testnum 460 === End of file server.cmd === Start of file valgrind460 ==96101== ==96101== Process terminating with default action of signal 4 (SIGILL) ==96101== Illegal opcode at address 0x10B06D ==96101== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96101== by 0x10B06D: main (tool_main.c:234) === End of file valgrind460 CMD (33792): ../libtool --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/valgrind461 ../src/curl -q --output log/3/curl461.out --include --trace-ascii log/3/trace461 --trace-time http://127.0.0.1:46313/461 -H host: > log/3/stdout461 2> log/3/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/8/valgrind462 ../src/curl -q --output log/8/curl462.out --include --trace-ascii log/8/trace462 --trace-time http://127.0.0.1:33791/462 -K log/8/cmd > log/8/stdout462 2> log/8/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/9/valgrind463 ../src/curl -q --output log/9/curl463.out --include --trace-ascii log/9/trace463 --trace-time -d @log/9/input463 http://127.0.0.1:40247/463 > log/9/stdout463 2> log/9/stderr463 CMD (33792): ../libtool --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-time -H “host: 127.0.0.1:35843/” -s > log/11/stdout469 2> log/11/stderr469 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/12/valgrind459 ../src/curl -q --output log/12/curl459.out --include --trace-ascii log/12/trace459 --trace-time http://127.0.0.1:44175/459 --config log/12/config --silent > log/12/stdout459 2> log/12/stderr459 459: stderr FAILED: --- log/12/check-expected 2024-05-23 11:16:07.386794493 +0200 +++ log/12/check-generated 2024-05-23 11:16:07.386794493 +0200 @@ -1,2 +0,0 @@ -Warning: log/12/config:1: warning: 'data' uses unquoted whitespace[LF] -Warning: This may cause side-effects. Consider using double quotes?[LF] == Contents of files in the log/12/ dir after test 459 === Start of file check-expected Warning: log/12/config:1: warning: 'data' uses unquoted whitespace[LF] Warning: This may cause side-effects. Consider using double quotes?[LF] === End of file check-expected === Start of file config data = arg with space === End of file config === Start of file server.cmd Testnum 459 === End of file server.cmd === Start of file valgrind459 ==96092== ==96092== Process terminating with default action of signal 4 (SIGILL) ==96092== Illegal opcode at address 0x10B06D ==96092== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96092== by 0x10B06D: main (tool_main.c:234) === End of file valgrind459 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/3/valgrind461 ../src/curl -q --output log/3/curl461.out --include --trace-ascii log/3/trace461 --trace-time http://127.0.0.1:46313/461 -H host: > log/3/stdout461 2> log/3/stderr461 461: 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 461 === Start of file server.cmd Testnum 461 === End of file server.cmd === Start of file valgrind461 ==96199== ==96199== Process terminating with default action of signal 4 (SIGILL) ==96199== Illegal opcode at address 0x10B06D ==96199== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96199== by 0x10B06D: main (tool_main.c:234) === End of file valgrind461 * 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/8/valgrind462 ../src/curl -q --output log/8/curl462.out --include --trace-ascii log/8/trace462 --trace-time http://127.0.0.1:33791/462 -K log/8/cmd > log/8/stdout462 2> log/8/stderr462 curl returned 132, when expecting 26 462: exit FAILED == Contents of files in the log/8/ dir after test 462 === Start of file cmd variable %MISSING expand-data {{MISSING}} === End of file cmd === Start of file server.cmd Testnum 462 === End of file server.cmd === Start of file valgrind462 ==96246== ==96246== Process terminating with default action of signal 4 (SIGILL) ==96246== Illegal opcode at address 0x10B06D ==96246== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96246== by 0x10B06D: main (tool_main.c:234) === End of file valgrind462 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/9/valgrind463 ../src/curl -q --output log/9/curl463.out --include --trace-ascii log/9/trace463 --trace-time -d @log/9/input463 http://127.0.0.1:40247/463 > log/9/stdout463 2> log/9/stderr463 463: 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 463 === 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 valgrind463 ==96263== ==96263== Process terminating with default action of signal 4 (SIGILL) ==96263== Illegal opcode at address 0x10B06D ==96263== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96263== by 0x10B06D: main (tool_main.c:234) === End of file valgrind463 CMD (33792): ../libtool --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/valgrind467 ../src/curl -q --output log/1/curl467.out --include --trace-ascii log/1/trace467 --trace-time curl -v http://example.com > log/1/stdout467 2> log/1/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/5/valgrind468 ../src/curl -q --trace-ascii log/5/trace468 --trace-time http://127.0.0.1:33519/468 -K log/5/cmd468 -w "" > log/5/stdout468 2> log/5/stderr468 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-time -H “host: 127.0.0.1:35843/” -s > log/11/stdout469 2> log/11/stderr469 469: stderr FAILED: --- log/11/check-expected 2024-05-23 11:16:07.806803114 +0200 +++ log/11/check-generated 2024-05-23 11:16:07.806803114 +0200 @@ -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 server.cmd Testnum 469 === End of file server.cmd === Start of file valgrind469 ==96383== ==96383== Process terminating with default action of signal 4 (SIGILL) ==96383== Illegal opcode at address 0x10B06D ==96383== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96383== by 0x10B06D: main (tool_main.c:234) === End of file valgrind469 * 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/1/valgrind467 ../src/curl -q --output log/1/curl467.out --include --trace-ascii log/1/trace467 --trace-time curl -v http://example.com > log/1/stdout467 2> log/1/stderr467 curl returned 132, when expecting 2 467: exit FAILED == Contents of files in the log/1/ dir after test 467 === Start of file server.cmd Testnum 467 === End of file server.cmd === Start of file valgrind467 ==96350== ==96350== Process terminating with default action of signal 4 (SIGILL) ==96350== Illegal opcode at address 0x10B06D ==96350== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96350== by 0x10B06D: main (tool_main.c:234) === End of file valgrind467 CMD (33792): ../libtool --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/valgrind470 ../src/curl -q --output log/4/curl470.out --include --trace-ascii log/4/trace470 --trace-time 127.0.0.1:41947 --no-progress-meter -K "log/4/input470" > log/4/stdout470 2> log/4/stderr470 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/5/valgrind468 ../src/curl -q --trace-ascii log/5/trace468 --trace-time http://127.0.0.1:33519/468 -K log/5/cmd468 -w "" > log/5/stdout468 2> log/5/stderr468 468: stdout FAILED: --- log/5/check-expected 2024-05-23 11:16:07.826803526 +0200 +++ log/5/check-generated 2024-05-23 11:16:07.826803526 +0200 @@ -1 +0,0 @@ --foo-[LF] == Contents of files in the log/5/ 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 server.cmd Testnum 468 === End of file server.cmd === Start of file valgrind468 ==96375== ==96375== Process terminating with default action of signal 4 (SIGILL) ==96375== Illegal opcode at address 0x10B06D ==96375== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96375== by 0x10B06D: main (tool_main.c:234) === End of file valgrind468 CMD (33792): ../libtool --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/valgrind491 ../src/curl -q --output log/6/curl491.out --include --trace-ascii log/6/trace491 --trace-time http://127.0.0.1:41583/491 -T '{log/6/in491,log/6/bad491}' > log/6/stdout491 2> log/6/stderr491 CMD (33792): ../libtool --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/valgrind471 ../src/curl -q --include --trace-ascii log/7/trace471 --trace-time "http://127.0.0.1:35853/{471,4710001}" -o "log/7/dumpit#1.dump" > log/7/stdout471 2> log/7/stderr471 CMD (33792): ../libtool --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/valgrind492 ../src/curl -q --output log/2/curl492.out --include --trace-ascii log/2/trace492 --trace-time 'http://127.0.0.1:44205/{one,two}/' -T '{log/2/first492,log/2/second492}' -H "Testno: 492" > log/2/stdout492 2> log/2/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/10/valgrind490 ../src/curl -q --output log/10/curl490.out --include --trace-ascii log/10/trace490 --trace-time http://127.0.0.1:36145/490 -T '{log/10/in490,log/10/in490}' > log/10/stdout490 2> log/10/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/12/valgrind493 ../src/curl -q --include --trace-ascii log/12/trace493 --trace-time -x http://127.0.0.1:44175 http://this.hsts.example/493 --hsts log/12/input493 -w '%{url_effective}\n' > log/12/stdout493 2> log/12/stderr493 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/4/valgrind470 ../src/curl -q --output log/4/curl470.out --include --trace-ascii log/4/trace470 --trace-time 127.0.0.1:41947 --no-progress-meter -K "log/4/input470" > log/4/stdout470 2> log/4/stderr470 470: stderr FAILED: --- log/4/check-expected 2024-05-23 11:16:07.993473614 +0200 +++ log/4/check-generated 2024-05-23 11:16:07.993473614 +0200 @@ -1,2 +0,0 @@ -Warning: The argument '%e2%80%9chost:fake%e2%80%9d' starts with a unicode quote where [LF] -Warning: maybe an ASCII " was intended?[LF] == Contents of files in the log/4/ 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 [LF] Warning: maybe an ASCII " was intended?[LF] === End of file check-expected === 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 valgrind470 ==96498== ==96498== Process terminating with default action of signal 4 (SIGILL) ==96498== Illegal opcode at address 0x10B06D ==96498== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96498== by 0x10B06D: main (tool_main.c:234) === End of file valgrind470 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/6/valgrind491 ../src/curl -q --output log/6/curl491.out --include --trace-ascii log/6/trace491 --trace-time http://127.0.0.1:41583/491 -T '{log/6/in491,log/6/bad491}' > log/6/stdout491 2> log/6/stderr491 491: 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 491 === Start of file in491 surprise === End of file in491 === Start of file server.cmd Testnum 491 === End of file server.cmd === Start of file valgrind491 ==96582== ==96582== Process terminating with default action of signal 4 (SIGILL) ==96582== Illegal opcode at address 0x10B06D ==96582== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96582== by 0x10B06D: main (tool_main.c:234) === End of file valgrind491 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/7/valgrind471 ../src/curl -q --include --trace-ascii log/7/trace471 --trace-time "http://127.0.0.1:35853/{471,4710001}" -o "log/7/dumpit#1.dump" > log/7/stdout471 2> log/7/stderr471 471: 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 471 === Start of file server.cmd Testnum 471 === End of file server.cmd === Start of file valgrind471 ==96518== ==96518== Process terminating with default action of signal 4 (SIGILL) ==96518== Illegal opcode at address 0x10B06D ==96518== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96518== by 0x10B06D: main (tool_main.c:234) === End of file valgrind471 test 0492...[Two globbed HTTP PUTs to two globbed 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/2/valgrind492 ../src/curl -q --output log/2/curl492.out --include --trace-ascii log/2/trace492 --trace-time 'http://127.0.0.1:44205/{one,two}/' -T '{log/2/first492,log/2/second492}' -H "Testno: 492" > log/2/stdout492 2> log/2/stderr492 492: 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 492 === Start of file first492 first 492 contents === End of file first492 === 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 valgrind492 ==96629== ==96629== Process terminating with default action of signal 4 (SIGILL) ==96629== Illegal opcode at address 0x10B06D ==96629== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96629== by 0x10B06D: main (tool_main.c:234) === End of file valgrind492 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/10/valgrind490 ../src/curl -q --output log/10/curl490.out --include --trace-ascii log/10/trace490 --trace-time http://127.0.0.1:36145/490 -T '{log/10/in490,log/10/in490}' > log/10/stdout490 2> log/10/stderr490 490: 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 490 === Start of file in490 surprise === End of file in490 === Start of file server.cmd Testnum 490 === End of file server.cmd === Start of file valgrind490 ==96534== ==96534== Process terminating with default action of signal 4 (SIGILL) ==96534== Illegal opcode at address 0x10B06D ==96534== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96534== by 0x10B06D: main (tool_main.c:234) === End of file valgrind490 CMD (33792): ../libtool --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/valgrind494 ../src/curl -q --output log/3/curl494.out --include --trace-ascii log/3/trace494 --trace-time --netrc --netrc-file log/3/netrc494 ftp://127.0.0.1:45493/494 > log/3/stdout494 2> log/3/stderr494 CMD (33792): ../libtool --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/valgrind495 ../src/curl -q --output log/8/curl495.out --include --trace-ascii log/8/trace495 --trace-time http://foo%40bar:secret@127.0.0.1:33791/495 --netrc-optional > log/8/stdout495 2> log/8/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/9/valgrind496 ../src/curl -q --output log/9/curl496.out --include --trace-ascii log/9/trace496 --trace-time 0 -Z -Tz > log/9/stdout496 2> log/9/stderr496 CMD (33792): ../libtool --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/valgrind497 ../src/curl -q --output log/11/curl497.out --include --trace-ascii log/11/trace497 --trace-time http://127.0.0.1:35843/497 > log/11/stdout497 2> log/11/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/1/valgrind498 ../src/curl -q --output log/1/curl498.out --include --trace-ascii log/1/trace498 --trace-time http://127.0.0.1:39283/498 --max-redirs 400 --location > log/1/stdout498 2> log/1/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/5/valgrind499 ../src/curl -q --output log/5/curl499.out --include --trace-ascii log/5/trace499 --trace-time http://127.0.0.1:33519/499 -I > log/5/stdout499 2> log/5/stderr499 CMD (0): ../src/curl --max-time 13 --output log/2/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:35369/verifiedserver" 2>log/2/http2_verify.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/9/valgrind509 ./libtest/lib509 nothing > log/9/stdout509 2> log/9/stderr509 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/12/valgrind493 ../src/curl -q --include --trace-ascii log/12/trace493 --trace-time -x http://127.0.0.1:44175 http://this.hsts.example/493 --hsts log/12/input493 -w '%{url_effective}\n' > log/12/stdout493 2> log/12/stderr493 493: stdout FAILED: --- log/12/check-expected 2024-05-23 11:16:08.066808451 +0200 +++ log/12/check-generated 2024-05-23 11:16:08.066808451 +0200 @@ -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/12/ 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 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 valgrind493 ==96638== ==96638== Process terminating with default action of signal 4 (SIGILL) ==96638== Illegal opcode at address 0x10B06D ==96638== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96638== by 0x10B06D: main (tool_main.c:234) === End of file valgrind493 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/3/valgrind494 ../src/curl -q --output log/3/curl494.out --include --trace-ascii log/3/trace494 --trace-time --netrc --netrc-file log/3/netrc494 ftp://127.0.0.1:45493/494 > log/3/stdout494 2> log/3/stderr494 494: 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 494 === 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 ==96802== ==96802== Process terminating with default action of signal 4 (SIGILL) ==96802== Illegal opcode at address 0x10B06D ==96802== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96802== by 0x10B06D: main (tool_main.c:234) === End of file valgrind494 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/8/valgrind495 ../src/curl -q --output log/8/curl495.out --include --trace-ascii log/8/trace495 --trace-time http://foo%40bar:secret@127.0.0.1:33791/495 --netrc-optional > log/8/stdout495 2> log/8/stderr495 495: 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 495 === Start of file server.cmd Testnum 495 === End of file server.cmd === Start of file valgrind495 ==96820== ==96820== Process terminating with default action of signal 4 (SIGILL) ==96820== Illegal opcode at address 0x10B06D ==96820== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96820== by 0x10B06D: 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/9/valgrind496 ../src/curl -q --output log/9/curl496.out --include --trace-ascii log/9/trace496 --trace-time 0 -Z -Tz > log/9/stdout496 2> log/9/stderr496 curl returned 132, when expecting 26 496: exit FAILED == Contents of files in the log/9/ dir after test 496 === Start of file server.cmd Testnum 496 === End of file server.cmd === Start of file valgrind496 ==96895== ==96895== Process terminating with default action of signal 4 (SIGILL) ==96895== Illegal opcode at address 0x10B06D ==96895== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96895== by 0x10B06D: main (tool_main.c:234) === End of file valgrind496 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/11/valgrind497 ../src/curl -q --output log/11/curl497.out --include --trace-ascii log/11/trace497 --trace-time http://127.0.0.1:35843/497 > log/11/stdout497 2> log/11/stderr497 497: 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 497 === Start of file server.cmd Testnum 497 === End of file server.cmd === Start of file valgrind497 ==96966== ==96966== Process terminating with default action of signal 4 (SIGILL) ==96966== Illegal opcode at address 0x10B06D ==96966== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96966== by 0x10B06D: main (tool_main.c:234) === End of file valgrind497 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/1/valgrind498 ../src/curl -q --output log/1/curl498.out --include --trace-ascii log/1/trace498 --trace-time http://127.0.0.1:39283/498 --max-redirs 400 --location > log/1/stdout498 2> log/1/stderr498 curl returned 132, when expecting 56 498: exit FAILED == Contents of files in the log/1/ dir after test 498 === Start of file server.cmd Testnum 498 === End of file server.cmd === Start of file valgrind498 ==96965== ==96965== Process terminating with default action of signal 4 (SIGILL) ==96965== Illegal opcode at address 0x10B06D ==96965== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96965== by 0x10B06D: main (tool_main.c:234) === End of file valgrind498 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/5/valgrind499 ../src/curl -q --output log/5/curl499.out --include --trace-ascii log/5/trace499 --trace-time http://127.0.0.1:33519/499 -I > log/5/stdout499 2> log/5/stderr499 499: 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 499 === Start of file server.cmd Testnum 499 === End of file server.cmd === Start of file valgrind499 ==96955== ==96955== Process terminating with default action of signal 4 (SIGILL) ==96955== Illegal opcode at address 0x10B06D ==96955== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==96955== by 0x10B06D: main (tool_main.c:234) === End of file valgrind499 CMD (33792): ../libtool --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/valgrind510 ./libtest/lib510 http://127.0.0.1:35843/510 > log/11/stdout510 2> log/11/stderr510 * 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/9/valgrind509 ./libtest/lib509 nothing > log/9/stdout509 2> log/9/stderr509 509: stdout FAILED: --- log/9/check-expected 2024-05-23 11:16:11.610214520 +0200 +++ log/9/check-generated 2024-05-23 11:16:11.610214520 +0200 @@ -1 +0,0 @@ -Callbacks were invoked![LF] == Contents of files in the log/9/ dir after test 509 === Start of file check-expected Callbacks were invoked![LF] === End of file check-expected === 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 ==97432== ==97432== Process terminating with default action of signal 4 (SIGILL) ==97432== Illegal opcode at address 0x48DC18B ==97432== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97432== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97432== by 0x48DC18B: Curl_open (url.c:519) ==97432== by 0x487CCEF: curl_easy_init (easy.c:368) ==97432== by 0x1090D6: UnknownInlinedFun (lib509.c:93) ==97432== by 0x1090D6: main (first.c:178) ==97432== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97432== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97432== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97432== by 0x4A58EC8: tsearch (tsearch.c:290) ==97432== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97432== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97432== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97432== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97432== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97432== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97432== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97432== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97432== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97432== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97432== by 0x497836B: setlocale (setlocale.c:337) ==97432== by 0x109056: main (first.c:157) ==97432== ==97432== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97432== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97432== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97432== by 0x4A58EC8: tsearch (tsearch.c:290) ==97432== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97432== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97432== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97432== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97432== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97432== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97432== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97432== by 0x497836B: setlocale (setlocale.c:337) ==97432== by 0x109056: main (first.c:157) ==97432== ==97432== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97432== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97432== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97432== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97432== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97432== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97432== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97432== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97432== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97432== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97432== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97432== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97432== by 0x497836B: setlocale (setlocale.c:337) ==97432== by 0x109056: main (first.c:157) ==97432== ==97432== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97432== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97432== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97432== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97432== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97432== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97432== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97432== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97432== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97432== by 0x497836B: setlocale (setlocale.c:337) ==97432== by 0x109056: main (first.c:157) ==97432== ==97432== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97432== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97432== by 0x48DC163: Curl_open (url.c:510) ==97432== by 0x487CCEF: curl_easy_init (easy.c:368) ==97432== by 0x1090D6: UnknownInlinedFun (lib509.c:93) ==97432== by 0x1090D6: main (first.c:178) ==97432== ==97432== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97432== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97432== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97432== by 0x4A58EC8: tsearch (tsearch.c:290) ==97432== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97432== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97432== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97432== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97432== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97432== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97432== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97432== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97432== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97432== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97432== by 0x497836B: setlocale (setlocale.c:337) ==97432== by 0x109056: main (first.c:157) ==97432== ==97432== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97432== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97432== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97432== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97432== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97432== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97432== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97432== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97432== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97432== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97432== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97432== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97432== by 0x497836B: setlocale (setlocale.c:337) ==97432== by 0x109056: main (first.c:157) ==97432== === End of file valgrind509 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/11/valgrind510 ./libtest/lib510 http://127.0.0.1:35843/510 > log/11/stdout510 2> log/11/stderr510 510: 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 510 === Start of file server.cmd Testnum 510 === End of file server.cmd === Start of file stderr510 URL: http://127.0.0.1:35843/510 === End of file stderr510 === Start of file valgrind510 ==97480== ==97480== Process terminating with default action of signal 4 (SIGILL) ==97480== Illegal opcode at address 0x48DC18B ==97480== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97480== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97480== CMD (33792): ../libtool --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/valgrind505 ./libtest/lib505 ftp://127.0.0.1:41005/505 log/12/upload505 > log/12/stdout505 2> log/12/stderr505 by 0x48DC18B: Curl_open (url.c:519) ==97480== by 0x487CCEF: curl_easy_init (easy.c:368) ==97480== by 0x1090A1: UnknownInlinedFun (lib510.c:77) ==97480== by 0x1090A1: main (first.c:178) ==97480== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97480== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97480== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97480== by 0x4A58EC8: tsearch (tsearch.c:290) ==97480== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97480== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97480== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97480== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97480== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97480== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97480== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97480== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97480== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97480== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97480== by 0x497836B: setlocale (setlocale.c:337) ==97480== by 0x109056: main (first.c:157) ==97480== ==97480== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97480== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97480== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97480== by 0x4A58EC8: tsearch (tsearch.c:290) ==97480== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97480== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97480== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97480== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97480== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97480== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97480== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97480== by 0x497836B: setlocale (setlocale.c:337) ==97480== by 0x109056: main (first.c:157) ==97480== ==97480== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97480== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97480== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97480== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97480== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97480== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97480== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97480== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97480== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97480== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97480== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97480== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97480== by 0x497836B: setlocale (setlocale.c:337) ==97480== by 0x109056: main (first.c:157) ==97480== ==97480== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97480== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97480== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97480== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97480== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97480== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97480== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97480== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97480== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97480== by 0x497836B: setlocale (setlocale.c:337) ==97480== by 0x109056: main (first.c:157) ==97480== ==97480== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97480== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97480== by 0x48DC163: Curl_open (url.c:510) ==97480== by 0x487CCEF: curl_easy_init (easy.c:368) ==97480== by 0x1090A1: UnknownInlinedFun (lib510.c:77) ==97480== by 0x1090A1: main (first.c:178) ==97480== ==97480== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97480== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97480== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97480== by 0x4A58EC8: tsearch (tsearch.c:290) ==97480== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97480== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97480== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97480== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97480== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97480== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97480== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97480== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97480== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97480== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97480== by 0x497836B: setlocale (setlocale.c:337) ==97480== by 0x109056: main (first.c:157) ==97480== ==97480== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97480== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97480== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97480== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97480== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97480== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97480== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97480== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97480== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97480== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97480== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97480== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97480== by 0x497836B: setlocale (setlocale.c:337) ==97480== by 0x109056: main (first.c:157) ==97480== === End of file valgrind510 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/12/valgrind505 ./libtest/lib505 ftp://127.0.0.1:41005/505 log/12/upload505 > log/12/stdout505 2> log/12/stderr505 505: 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 505 === Start of file server.cmd Testnum 505 === End of file server.cmd === Start of file stderr505 URL: ftp://127.0.0.1:41005/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 ==97238== ==97238== Process terminating with default action of signal 4 (SIGILL) ==97238== Illegal opcode at address 0x48DC18B ==97238== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97238== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97238== by 0x48DC18B: Curl_open (url.c:519) ==97238== by 0x487CCEF: curl_easy_init (easy.c:368) ==97238== by 0x109114: UnknownInlinedFun (lib505.c:89) ==97238== by 0x109114: main (first.c:178) ==97238== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==97238== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97238== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97238== by 0x4A58EC8: tsearch (tsearch.c:290) ==97238== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97238== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97238== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97238== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97238== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97238== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97238== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97238== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97238== by 0x496B88CCMD (33792): ../libtool --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/valgrind511 ./libtest/lib511 ftp://127.0.0.1:35701/511 > log/1/stdout511 2> log/1/stderr511 : __gconv_compare_alias (gconv_db.c:692) ==97238== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97238== by 0x497836B: setlocale (setlocale.c:337) ==97238== by 0x10905B: main (first.c:157) ==97238== ==97238== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==97238== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97238== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97238== by 0x4A58EC8: tsearch (tsearch.c:290) ==97238== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97238== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97238== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97238== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97238== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97238== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97238== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97238== by 0x497836B: setlocale (setlocale.c:337) ==97238== by 0x10905B: main (first.c:157) ==97238== ==97238== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==97238== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97238== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97238== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97238== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97238== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97238== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97238== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97238== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97238== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97238== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97238== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97238== by 0x497836B: setlocale (setlocale.c:337) ==97238== by 0x10905B: main (first.c:157) ==97238== ==97238== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==97238== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97238== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97238== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97238== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97238== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97238== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97238== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97238== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97238== by 0x497836B: setlocale (setlocale.c:337) ==97238== by 0x10905B: main (first.c:157) ==97238== ==97238== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==97238== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97238== by 0x48DC163: Curl_open (url.c:510) ==97238== by 0x487CCEF: curl_easy_init (easy.c:368) ==97238== by 0x109114: UnknownInlinedFun (lib505.c:89) ==97238== by 0x109114: main (first.c:178) ==97238== ==97238== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==97238== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97238== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97238== by 0x4A58EC8: tsearch (tsearch.c:290) ==97238== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97238== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97238== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97238== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97238== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97238== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97238== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97238== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97238== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97238== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97238== by 0x497836B: setlocale (setlocale.c:337) ==97238== by 0x10905B: main (first.c:157) ==97238== ==97238== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==97238== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97238== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97238== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97238== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97238== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97238== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97238== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97238== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97238== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97238== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97238== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97238== by 0x497836B: setlocale (setlocale.c:337) ==97238== by 0x10905B: main (first.c:157) ==97238== === End of file valgrind505 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/1/valgrind511 ./libtest/lib511 ftp://127.0.0.1:35701/511 > log/1/stdout511 2> log/1/stderr511 511: 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 511 === 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:35701/511 === End of file stderr511 === Start of file valgrind511 ==97521== ==97521== Process terminating with default action of signal 4 (SIGILL) ==97521== Illegal opcode at address 0x48DC18B ==97521== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97521== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97521== by 0x48DC18B: Curl_open (url.c:519) ==97521== by 0x487CCEF: curl_easy_init (easy.c:368) ==97521== by 0x10908A: UnknownInlinedFun (lib511.c:38) ==97521== by 0x10908A: main (first.c:178) ==97521== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97521== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97521== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97521== by 0x4A58EC8: tsearch (tsearch.c:290) ==97521== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97521== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97521== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97521== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97521== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97521== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97521== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97521== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97521== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97521== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97521== by 0x497836B: setlocale (setlocale.c:337) ==97521== by 0x109047: main (first.c:157) ==97521== ==97521== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97521== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97521== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97521== by 0x4A58EC8: tsearch (tsearch.c:290) ==97521== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97521== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97521== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97521== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97521== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97521== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97521== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97521== by 0x497836B: setlocale (setlocale.c:337) ==97521== by 0x109047: main (first.c:157) ==97521== ==97521== 681 bytes in 17 blockCMD (33792): ../libtool --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/valgrind512 ./libtest/lib512 http://127.0.0.1:33519/512 > log/5/stdout512 2> log/5/stderr512 s are possibly lost in loss record 611 of 650 ==97521== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97521== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97521== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97521== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97521== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97521== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97521== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97521== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97521== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97521== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97521== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97521== by 0x497836B: setlocale (setlocale.c:337) ==97521== by 0x109047: main (first.c:157) ==97521== ==97521== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97521== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97521== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97521== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97521== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97521== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97521== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97521== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97521== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97521== by 0x497836B: setlocale (setlocale.c:337) ==97521== by 0x109047: main (first.c:157) ==97521== ==97521== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97521== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97521== by 0x48DC163: Curl_open (url.c:510) ==97521== by 0x487CCEF: curl_easy_init (easy.c:368) ==97521== by 0x10908A: UnknownInlinedFun (lib511.c:38) ==97521== by 0x10908A: main (first.c:178) ==97521== ==97521== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97521== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97521== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97521== by 0x4A58EC8: tsearch (tsearch.c:290) ==97521== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97521== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97521== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97521== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97521== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97521== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97521== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97521== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97521== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97521== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97521== by 0x497836B: setlocale (setlocale.c:337) ==97521== by 0x109047: main (first.c:157) ==97521== ==97521== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97521== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97521== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97521== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97521== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97521== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97521== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97521== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97521== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97521== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97521== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97521== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97521== by 0x497836B: setlocale (setlocale.c:337) ==97521== by 0x109047: main (first.c:157) ==97521== === 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/5/valgrind512 ./libtest/lib512 http://127.0.0.1:33519/512 > log/5/stdout512 2> log/5/stderr512 512: 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 512 === Start of file server.cmd Testnum 512 === End of file server.cmd === Start of file stderr512 URL: http://127.0.0.1:33519/512 === End of file stderr512 === Start of file valgrind512 ==97520== ==97520== Process terminating with default action of signal 4 (SIGILL) ==97520== Illegal opcode at address 0x48DC18B ==97520== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97520== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97520== by 0x48DC18B: Curl_open (url.c:519) ==97520== by 0x487CCEF: curl_easy_init (easy.c:368) ==97520== by 0x1090B6: UnknownInlinedFun (lib512.c:38) ==97520== by 0x1090B6: main (first.c:178) ==97520== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97520== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97520== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97520== by 0x4A58EC8: tsearch (tsearch.c:290) ==97520== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97520== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97520== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97520== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97520== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97520== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97520== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97520== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97520== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97520== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97520== by 0x497836B: setlocale (setlocale.c:337) ==97520== by 0x10904B: main (first.c:157) ==97520== ==97520== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97520== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97520== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97520== by 0x4A58EC8: tsearch (tsearch.c:290) ==97520== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97520== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97520== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97520== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97520== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97520== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97520== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97520== by 0x497836B: setlocale (setlocale.c:337) ==97520== by 0x10904B: main (first.c:157) ==97520== ==97520== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97520== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97520== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97520== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97520== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97520== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97520== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97520== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97520== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97520== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97520== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97520== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97520== by 0x497836B: setlocale (setlocale.c:337) ==97520== by 0x10904B: main (first.c:157) ==97520== ==97520== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97520== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97520== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97520== by 0x496CD13: add_alias2 (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/8/valgrind508 ./libtest/lib508 http://127.0.0.1:33791/508 > log/8/stdout508 2> log/8/stderr508 conf.c:105) ==97520== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97520== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97520== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97520== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97520== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97520== by 0x497836B: setlocale (setlocale.c:337) ==97520== by 0x10904B: main (first.c:157) ==97520== ==97520== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97520== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97520== by 0x48DC163: Curl_open (url.c:510) ==97520== by 0x487CCEF: curl_easy_init (easy.c:368) ==97520== by 0x1090B6: UnknownInlinedFun (lib512.c:38) ==97520== by 0x1090B6: main (first.c:178) ==97520== ==97520== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97520== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97520== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97520== by 0x4A58EC8: tsearch (tsearch.c:290) ==97520== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97520== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97520== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97520== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97520== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97520== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97520== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97520== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97520== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97520== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97520== by 0x497836B: setlocale (setlocale.c:337) ==97520== by 0x10904B: main (first.c:157) ==97520== ==97520== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97520== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97520== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97520== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97520== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97520== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97520== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97520== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97520== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97520== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97520== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97520== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97520== by 0x497836B: setlocale (setlocale.c:337) ==97520== by 0x10904B: main (first.c:157) ==97520== === End of file valgrind512 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/lib508 http://127.0.0.1:33791/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 server.cmd Testnum 508 === End of file server.cmd === Start of file stderr508 URL: http://127.0.0.1:33791/508 === End of file stderr508 === Start of file valgrind508 ==97383== ==97383== Process terminating with default action of signal 4 (SIGILL) ==97383== Illegal opcode at address 0x48DC18B ==97383== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97383== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97383== by 0x48DC18B: Curl_open (url.c:519) ==97383== by 0x487CCEF: curl_easy_init (easy.c:368) ==97383== by 0x1090AC: UnknownInlinedFun (lib508.c:67) ==97383== by 0x1090AC: main (first.c:178) ==97383== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97383== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97383== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97383== by 0x4A58EC8: tsearch (tsearch.c:290) ==97383== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97383== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97383== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97383== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97383== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97383== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97383== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97383== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97383== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97383== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97383== by 0x497836B: setlocale (setlocale.c:337) ==97383== by 0x109054: main (first.c:157) ==97383== ==97383== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97383== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97383== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97383== by 0x4A58EC8: tsearch (tsearch.c:290) ==97383== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97383== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97383== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97383== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97383== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97383== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97383== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97383== by 0x497836B: setlocale (setlocale.c:337) ==97383== by 0x109054: main (first.c:157) ==97383== ==97383== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97383== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97383== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97383== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97383== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97383== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97383== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97383== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97383== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97383== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97383== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97383== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97383== by 0x497836B: setlocale (setlocale.c:337) ==97383== by 0x109054: main (first.c:157) ==97383== ==97383== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97383== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97383== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97383== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97383== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97383== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97383== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97383== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97383== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97383== by 0x497836B: setlocale (setlocale.c:337) ==97383== by 0x109054: main (first.c:157) ==97383== ==97383== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97383== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97383== by 0x48DC163: Curl_open (url.c:510) ==97383== by 0x487CCEF: curl_easy_init (easy.c:368) ==97383== by 0x1090AC: UnknownInlinedFun (lib508.c:67) ==97383== by 0x1090AC: main (first.c:178) ==97383== ==97383== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97383== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97383== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97383== by 0x4A58EC8: tsearch (tsearch.c:290) ==97383== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c: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/10/valgrind504 ./libtest/lib504 http://127.0.0.1:47/504 127.0.0.1:47 > log/10/stdout504 2> log/10/stderr504 2) ==97383== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97383== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97383== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97383== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97383== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97383== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97383== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97383== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97383== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97383== by 0x497836B: setlocale (setlocale.c:337) ==97383== by 0x109054: main (first.c:157) ==97383== ==97383== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97383== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97383== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97383== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97383== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97383== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97383== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97383== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97383== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97383== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97383== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97383== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97383== by 0x497836B: setlocale (setlocale.c:337) ==97383== by 0x109054: main (first.c:157) ==97383== === End of file valgrind508 * 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/10/valgrind504 ./libtest/lib504 http://127.0.0.1:47/504 127.0.0.1:47 > log/10/stdout504 2> log/10/stderr504 lib504 returned 132, when expecting 120 504: exit FAILED == Contents of files in the log/10/ dir after test 504 === 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 ==97215== ==97215== Process terminating with default action of signal 4 (SIGILL) ==97215== Illegal opcode at address 0x48DC18B ==97215== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97215== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97215== by 0x48DC18B: Curl_open (url.c:519) ==97215== by 0x487CCEF: curl_easy_init (easy.c:368) ==97215== by 0x109311: test.part.0 (lib504.c:51) ==97215== by 0x1090AF: UnknownInlinedFun (lib504.c:49) ==97215== by 0x1090AF: main (first.c:178) ==97215== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97215== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97215== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97215== by 0x4A58EC8: tsearch (tsearch.c:290) ==97215== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97215== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97215== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97215== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97215== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97215== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97215== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97215== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97215== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97215== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97215== by 0x497836B: setlocale (setlocale.c:337) ==97215== by 0x109047: main (first.c:157) ==97215== ==97215== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97215== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97215== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97215== by 0x4A58EC8: tsearch (tsearch.c:290) ==97215== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97215== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97215== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97215== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97215== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97215== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97215== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97215== by 0x497836B: setlocale (setlocale.c:337) ==97215== by 0x109047: main (first.c:157) ==97215== ==97215== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97215== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97215== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97215== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97215== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97215== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97215== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97215== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97215== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97215== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97215== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97215== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97215== by 0x497836B: setlocale (setlocale.c:337) ==97215== by 0x109047: main (first.c:157) ==97215== ==97215== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97215== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97215== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97215== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97215== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97215== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97215== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97215== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97215== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97215== by 0x497836B: setlocale (setlocale.c:337) ==97215== by 0x109047: main (first.c:157) ==97215== ==97215== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97215== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97215== by 0x48DC163: Curl_open (url.c:510) ==97215== by 0x487CCEF: curl_easy_init (easy.c:368) ==97215== by 0x109311: test.part.0 (lib504.c:51) ==97215== by 0x1090AF: UnknownInlinedFun (lib504.c:49) ==97215== by 0x1090AF: main (first.c:178) ==97215== ==97215== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97215== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97215== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97215== by 0x4A58EC8: tsearch (tsearch.c:290) ==97215== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97215== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97215== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97215== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97215== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97215== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97215== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97215== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97215== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97215== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97215== by 0x497836B: setlocale (setlocale.c:337) ==97215== by 0x109047: main (first.c:157) ==97215== ==97215== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97215== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97215== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97215== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97215== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97215== by 0x496CMD (33792): ../libtool --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/valgrind514 ./libtest/lib514 http://127.0.0.1:35843/514 > log/11/stdout514 2> log/11/stderr514 CMD (33792): ../libtool --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/lib502 file:///startdir/src/build-curl/tests/log/7/test502.txt > log/7/stdout502 2> log/7/stderr502 CMD (33792): ../libtool --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/valgrind513 ./libtest/lib513 http://127.0.0.1:40247/513 > log/9/stdout513 2> log/9/stderr513 C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97215== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97215== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97215== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97215== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97215== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97215== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97215== by 0x497836B: setlocale (setlocale.c:337) ==97215== by 0x109047: main (first.c:157) ==97215== === End of file valgrind504 CMD (0): ./libtest/lib518 http://127.0.0.1:33791/518 > log/8/stdout518 2> log/8/stderr518 CMD (33792): ../libtool --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/valgrind515 ./libtest/lib515 http://127.0.0.1:44175/515 > log/12/stdout515 2> log/12/stderr515 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/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 2024-05-23 11:16:12.993576249 +0200 +++ log/7/check-generated 2024-05-23 11:16:12.993576249 +0200 @@ -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 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 ==97145== ==97145== Process terminating with default action of signal 4 (SIGILL) ==97145== Illegal opcode at address 0x48DC18B ==97145== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97145== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97145== by 0x48DC18B: Curl_open (url.c:519) ==97145== by 0x487CCEF: curl_easy_init (easy.c:368) ==97145== by 0x1092B1: test.part.0 (lib502.c:47) ==97145== by 0x1090D1: UnknownInlinedFun (lib502.c:45) ==97145== by 0x1090D1: main (first.c:178) ==97145== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97145== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97145== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97145== by 0x4A58EC8: tsearch (tsearch.c:290) ==97145== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97145== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97145== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97145== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97145== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97145== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97145== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97145== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97145== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97145== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97145== by 0x497836B: setlocale (setlocale.c:337) ==97145== by 0x109054: main (first.c:157) ==97145== ==97145== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97145== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97145== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97145== by 0x4A58EC8: tsearch (tsearch.c:290) ==97145== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97145== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97145== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97145== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97145== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97145== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97145== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97145== by 0x497836B: setlocale (setlocale.c:337) ==97145== by 0x109054: main (first.c:157) ==97145== ==97145== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97145== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97145== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97145== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97145== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97145== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97145== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97145== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97145== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97145== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97145== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97145== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97145== by 0x497836B: setlocale (setlocale.c:337) ==97145== by 0x109054: main (first.c:157) ==97145== ==97145== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97145== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97145== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97145== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97145== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97145== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97145== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97145== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97145== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97145== by 0x497836B: setlocale (setlocale.c:337) ==97145== by 0x109054: main (first.c:157) ==97145== ==97145== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97145== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97145== by 0x48DC163: Curl_open (url.c:510) ==97145== by 0x487CCEF: curl_easy_init (easy.c:368) ==97145== by 0x1092B1: test.part.0 (lib502.c:47) ==97145== by 0x1090D1: UnknownInlinedFun (lib502.c:45) ==97145== by 0x1090D1: main (first.c:178) ==97145== ==97145== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97145== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97145== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97145== by 0x4A58EC8: tsearch (tsearch.c:290) ==97145== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97145== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97145== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97145== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97145== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97145== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97145== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97145== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97145== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97145== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97145== by 0x497836B: setlocale (setlocale.c:337) ==97145== by 0x109054: main (first.c:157) ==97145== ==97145== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97145== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97145== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97145== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97145== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97145== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97145== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97145== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97145== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97145== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97145== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97145== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97145== by 0x497836B: setlocale (setlocale.c:337) ==97145== by 0x109054: main (first.c:157) ==97145== === End of file valgrind502 prechecked ./libtest/lib518 check test 0518...[HTTP GET with more than FD_SETSIZE descriptors open] ./libtest/lib518 http://127.0.0.1:33791/518 > log/8/stdout518 2> log/8/stderr518 valgrind SKIPPED --pd---e--- OK (477 out of 1513, remaining: 01:08, took 0.589s, duration: 00:31) 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/12/valgrind515 ./libtest/lib515 http://127.0.0.1:44175/515 > log/12/stdout515 2> log/12/stderr515 515: protocol FAILED! There was no content at all in the 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/1/valgrind516 ./libtest/lib516 http://127.0.0.1:39283/516 > log/1/stdout516 2> log/1/stderr516 log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 515 === Start of file server.cmd Testnum 515 === End of file server.cmd === Start of file stderr515 URL: http://127.0.0.1:44175/515 === End of file stderr515 === Start of file valgrind515 ==97834== ==97834== Process terminating with default action of signal 4 (SIGILL) ==97834== Illegal opcode at address 0x48DC18B ==97834== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97834== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97834== by 0x48DC18B: Curl_open (url.c:519) ==97834== by 0x487CCEF: curl_easy_init (easy.c:368) ==97834== by 0x10908A: UnknownInlinedFun (lib515.c:38) ==97834== by 0x10908A: main (first.c:178) ==97834== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97834== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97834== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97834== by 0x4A58EC8: tsearch (tsearch.c:290) ==97834== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97834== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97834== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97834== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97834== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97834== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97834== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97834== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97834== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97834== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97834== by 0x497836B: setlocale (setlocale.c:337) ==97834== by 0x109047: main (first.c:157) ==97834== ==97834== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97834== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97834== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97834== by 0x4A58EC8: tsearch (tsearch.c:290) ==97834== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97834== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97834== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97834== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97834== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97834== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97834== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97834== by 0x497836B: setlocale (setlocale.c:337) ==97834== by 0x109047: main (first.c:157) ==97834== ==97834== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97834== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97834== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97834== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97834== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97834== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97834== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97834== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97834== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97834== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97834== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97834== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97834== by 0x497836B: setlocale (setlocale.c:337) ==97834== by 0x109047: main (first.c:157) ==97834== ==97834== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97834== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97834== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97834== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97834== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97834== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97834== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97834== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97834== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97834== by 0x497836B: setlocale (setlocale.c:337) ==97834== by 0x109047: main (first.c:157) ==97834== ==97834== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97834== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97834== by 0x48DC163: Curl_open (url.c:510) ==97834== by 0x487CCEF: curl_easy_init (easy.c:368) ==97834== by 0x10908A: UnknownInlinedFun (lib515.c:38) ==97834== by 0x10908A: main (first.c:178) ==97834== ==97834== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97834== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97834== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97834== by 0x4A58EC8: tsearch (tsearch.c:290) ==97834== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97834== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97834== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97834== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97834== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97834== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97834== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97834== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97834== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97834== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97834== by 0x497836B: setlocale (setlocale.c:337) ==97834== by 0x109047: main (first.c:157) ==97834== ==97834== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97834== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97834== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97834== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97834== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97834== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97834== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97834== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97834== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97834== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97834== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97834== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97834== by 0x497836B: setlocale (setlocale.c:337) ==97834== by 0x109047: main (first.c:157) ==97834== === End of file valgrind515 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/lib516 http://127.0.0.1:39283/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 server.cmd Testnum 516 === End of file server.cmd === Start of file stderr516 URL: http://127.0.0.1:39283/516 === End of file stderr516 === Start of file valgrind516 ==97836== ==97836== Process terminating with default action of signal 4 (SIGILL) ==97836== Illegal opcode at address 0x48DC18B ==97836== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97836== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97836== by 0x48DC18B: Curl_open (url.c:519) ==97836== by 0x487CCEF: curl_easy_init (easy.c:368) ==97836== by 0x10908A: UnknownInlinedFun (lib516.c:38) ==97836== by 0x10908A: main (first.c:178) ==97836== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97836== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97836== by 0x4A58EC8: tsearch (tsearch.c:290) ==97836== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97836== by 0x496C9A2: 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/2/valgrind503 ./libtest/lib503 http://machine.503:44205/503 127.0.0.1:35369 > log/2/stdout503 2> log/2/stderr503 ==97836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97836== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97836== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97836== by 0x497836B: setlocale (setlocale.c:337) ==97836== by 0x109047: main (first.c:157) ==97836== ==97836== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97836== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97836== by 0x4A58EC8: tsearch (tsearch.c:290) ==97836== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97836== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97836== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97836== by 0x497836B: setlocale (setlocale.c:337) ==97836== by 0x109047: main (first.c:157) ==97836== ==97836== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97836== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97836== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97836== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97836== by 0x497836B: setlocale (setlocale.c:337) ==97836== by 0x109047: main (first.c:157) ==97836== ==97836== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97836== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97836== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97836== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97836== by 0x497836B: setlocale (setlocale.c:337) ==97836== by 0x109047: main (first.c:157) ==97836== ==97836== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97836== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97836== by 0x48DC163: Curl_open (url.c:510) ==97836== by 0x487CCEF: curl_easy_init (easy.c:368) ==97836== by 0x10908A: UnknownInlinedFun (lib516.c:38) ==97836== by 0x10908A: main (first.c:178) ==97836== ==97836== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97836== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97836== by 0x4A58EC8: tsearch (tsearch.c:290) ==97836== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97836== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97836== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97836== by 0x497836B: setlocale (setlocale.c:337) ==97836== by 0x109047: main (first.c:157) ==97836== ==97836== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97836== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97836== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97836== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97836== by 0x497836B: setlocale (setlocale.c:337) ==97836== by 0x109047: main (first.c:157) ==97836== === End of file valgrind516 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/2/server/http2_server.pid" --logfile "log/2/http2_server.log" --logdir "log/2" --portfile log/2/server/http2_server.port --config log/2/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/2/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:35369/verifiedserver" 2>log/2/http2_verify.log RUN: HTTP2 server is on PID 97147 port 35369 * pid http-proxy => 97147 97147 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/2/valgrind503 ./libtest/lib503 http://machine.503:44205/503 127.0.0.1:35369 > log/2/stdout503 2> log/2/stderr503 503: 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 503 === Start of file http2_server.log 11:16:08.587086 Run as proxy, CONNECT to host 127.0.0.1 11:16:08.587286 Running HTTP IPv4 version on port 35369 11:16:08.587319 Wrote pid 97147 to log/2/server/http2_server.pid 11:16:08.587340 Wrote port 35369 to log/2/server/http2_server.port 11:16:09.585412 ====> Client connect 11:16:09.585426 accept_connection 3 returned 4 11:16:09.585434 accept_connection 3 returned 0 11:16:09.585442 Read 92 bytes 11:16:09.585448 Process 92 bytes request 11:16:09.585461 Got request: GET /verifiedserver HTTP/1.1 11:16:09.585466 Are-we-friendly question received 11:16:09.585479 Wrote request (92 bytes) input to log/2/proxy.input 11:16:09.585492 Identifying ourselves as friends 11:16:09.585539 Response sent (56 bytes) and written to log/2/proxy.response 11:16:09.585544 special request received, no persistency 11:16:09.585549 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:35369... * Connected to 127.0.0.1 (127.0.0.1) port 35369 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35369 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < 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: 97147 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 97147 === End of file proxy.response === Start of file server.cmdCMD (33792): ../libtool --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/valgrind501 ./libtest/lib501 http://127.0.0.1:47/501 > log/6/stdout501 2> log/6/stderr501 connection-monitor Testnum 503 === End of file server.cmd === Start of file stderr503 URL: http://machine.503:44205/503 === End of file stderr503 === Start of file test503.txt foo bar bar foo moo === End of file test503.txt === Start of file valgrind503 ==97673== ==97673== Process terminating with default action of signal 4 (SIGILL) ==97673== Illegal opcode at address 0x48DC18B ==97673== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97673== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97673== by 0x48DC18B: Curl_open (url.c:519) ==97673== by 0x487CCEF: curl_easy_init (easy.c:368) ==97673== by 0x109309: test.part.0 (lib503.c:51) ==97673== by 0x1090AF: UnknownInlinedFun (lib503.c:49) ==97673== by 0x1090AF: main (first.c:178) ==97673== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97673== by 0x4A58EC8: tsearch (tsearch.c:290) ==97673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97673== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97673== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97673== by 0x497836B: setlocale (setlocale.c:337) ==97673== by 0x109047: main (first.c:157) ==97673== ==97673== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97673== by 0x4A58EC8: tsearch (tsearch.c:290) ==97673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97673== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97673== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97673== by 0x497836B: setlocale (setlocale.c:337) ==97673== by 0x109047: main (first.c:157) ==97673== ==97673== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97673== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97673== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97673== by 0x497836B: setlocale (setlocale.c:337) ==97673== by 0x109047: main (first.c:157) ==97673== ==97673== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97673== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97673== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97673== by 0x497836B: setlocale (setlocale.c:337) ==97673== by 0x109047: main (first.c:157) ==97673== ==97673== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97673== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97673== by 0x48DC163: Curl_open (url.c:510) ==97673== by 0x487CCEF: curl_easy_init (easy.c:368) ==97673== by 0x109309: test.part.0 (lib503.c:51) ==97673== by 0x1090AF: UnknownInlinedFun (lib503.c:49) ==97673== by 0x1090AF: main (first.c:178) ==97673== ==97673== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97673== by 0x4A58EC8: tsearch (tsearch.c:290) ==97673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97673== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97673== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97673== by 0x497836B: setlocale (setlocale.c:337) ==97673== by 0x109047: main (first.c:157) ==97673== ==97673== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97673== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97673== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97673== by 0x497836B: setlocale (setlocale.c:337) ==97673== by 0x109047: main (first.c:157) ==97673== === End of file valgrind503 * 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/6/valgrind501 ./libtest/lib501 http://127.0.0.1:47/501 > log/6/stdout501 2> log/6/stderr501 lib501 returned 132, when expecting 3 501: exit FAILED == Contents of files in the log/6/ dir after test 501 === 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 ==97130== ==97130== Process terminating with default action of signal 4 (SIGILL) ==97130== Illegal opcode at address 0x48DC18B ==97130== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97130== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97130== by 0x48DC18B: Curl_open (url.c:519) ==97130== by 0x487CCEF: curl_easy_init (easy.c:368) ==97130== by 0x109087: UnknownInlinedFun (lib501.c:40) ==97130== by 0x109087: main (first.c:178) ==97130== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97130== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97130== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97130== by 0x4A58EC8: tsearch (tsearch.c:290) ==97130== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97130== by 0x496C9A2: add_alias2 (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/5/valgrind517 ./libtest/lib517 nothing > log/5/stdout517 2> log/5/stderr517 gconv_conf.c:176) ==97130== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97130== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97130== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97130== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97130== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97130== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97130== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97130== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97130== by 0x497836B: setlocale (setlocale.c:337) ==97130== by 0x109047: main (first.c:157) ==97130== ==97130== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97130== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97130== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97130== by 0x4A58EC8: tsearch (tsearch.c:290) ==97130== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97130== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97130== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97130== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97130== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97130== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97130== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97130== by 0x497836B: setlocale (setlocale.c:337) ==97130== by 0x109047: main (first.c:157) ==97130== ==97130== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97130== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97130== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97130== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97130== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97130== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97130== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97130== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97130== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97130== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97130== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97130== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97130== by 0x497836B: setlocale (setlocale.c:337) ==97130== by 0x109047: main (first.c:157) ==97130== ==97130== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97130== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97130== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97130== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97130== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97130== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97130== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97130== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97130== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97130== by 0x497836B: setlocale (setlocale.c:337) ==97130== by 0x109047: main (first.c:157) ==97130== ==97130== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97130== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97130== by 0x48DC163: Curl_open (url.c:510) ==97130== by 0x487CCEF: curl_easy_init (easy.c:368) ==97130== by 0x109087: UnknownInlinedFun (lib501.c:40) ==97130== by 0x109087: main (first.c:178) ==97130== ==97130== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97130== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97130== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97130== by 0x4A58EC8: tsearch (tsearch.c:290) ==97130== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97130== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97130== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97130== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97130== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97130== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97130== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97130== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97130== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97130== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97130== by 0x497836B: setlocale (setlocale.c:337) ==97130== by 0x109047: main (first.c:157) ==97130== ==97130== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97130== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97130== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97130== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97130== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97130== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97130== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97130== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97130== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97130== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97130== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97130== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97130== by 0x497836B: setlocale (setlocale.c:337) ==97130== by 0x109047: main (first.c:157) ==97130== === End of file valgrind501 * 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/5/valgrind517 ./libtest/lib517 nothing > log/5/stdout517 2> log/5/stderr517 -------e-v- OK (476 out of 1513, remaining: 01:10, took 1.225s, duration: 00:32) 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/11/valgrind514 ./libtest/lib514 http://127.0.0.1:35843/514 > log/11/stdout514 2> log/11/stderr514 514: 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 514 === Start of file server.cmd Testnum 514 === End of file server.cmd === Start of file stderr514 URL: http://127.0.0.1:35843/514 === End of file stderr514 === Start of file valgrind514 ==97738== ==97738== Process terminating with default action of signal 4 (SIGILL) ==97738== Illegal opcode at address 0x48DC18B ==97738== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97738== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97738== by 0x48DC18B: Curl_open (url.c:519) ==97738== by 0x487CCEF: curl_easy_init (easy.c:368) ==97738== by 0x10908A: UnknownInlinedFun (lib514.c:38) ==97738== by 0x10908A: main (first.c:178) ==97738== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97738== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97738== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97738== by 0x4A58EC8: tsearch (tsearch.c:290) ==97738== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97738== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97738== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97738== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97738== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97738== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97738== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97738== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97738== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97738== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97738== by 0x497836B: setlocale (setlocale.c:337) ==97738== by 0x109047: main (first.c:157) ==97738== ==97738== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97738== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97738== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97738== by 0x4A58EC8: tsearch (tsearch.c:290) ==97738== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97738== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97738== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97738== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97738== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97738== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97738== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97738== by 0x497836B: setlocale (setlocale.c:337) ==97738== by 0x109047: main (first.c:157) ==97738== ==97738== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97738== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97738== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97738== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97738== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97738== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97738== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97738== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97738== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97738== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97738== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97738== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97738== by 0x497836B: setlocale (setlocale.c:337) ==97738== by 0x109047: main (first.c:157) ==97738== ==97738== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97738== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97738== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97738== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97738== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97738== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97738== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97738== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97738== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97738== by 0x497836B: setlocale (setlocale.c:337) ==97738== by 0x109047: main (first.c:157) ==97738== ==97738== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97738== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97738== by 0x48DC163: Curl_open (url.c:510) ==97738== by 0x487CCEF: curl_easy_init (easy.c:368) ==97738== by 0x10908A: UnknownInlinedFun (lib514.c:38) ==97738== by 0x10908A: main (first.c:178) ==97738== ==97738== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97738== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97738== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97738== by 0x4A58EC8: tsearch (tsearch.c:290) ==97738== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97738== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97738== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97738== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97738== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97738== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97738== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97738== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97738== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97738== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97738== by 0x497836B: setlocale (setlocale.c:337) ==97738== by 0x109047: main (first.c:157) ==97738== ==97738== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97738== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97738== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97738== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97738== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97738== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97738== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97738== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97738== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97738== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97738== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97738== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97738== by 0x497836B: setlocale (setlocale.c:337) ==97738== by 0x109047: main (first.c:157) ==97738== === End of file valgrind514 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/9/valgrind513 ./libtest/lib513 http://127.0.0.1:40247/513 > log/9/stdout513 2> log/9/stderr513 lib513 returned 132, when expecting 42 513: exit FAILED == Contents of files in the log/9/ dir after test 513 === Start of file server.cmd Testnum 513 === End of file server.cmd === Start of file stderr513 URL: http://127.0.0.1:40247/513 === End of file stderr513 === Start of file valgrind513 ==97737== ==97737== Process terminating with default action of signal 4 (SIGILL) ==97737== Illegal opcode at address 0x48DC18B ==97737== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97737== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97737== by 0x48DC18B: Curl_open (url.c:519) ==97737== by 0x487CCEF: curl_easy_init (easy.c:368) ==97737== by 0x10908A: UnknownInlinedFun (lib513.c:47) ==97737== by 0x10908A: main (first.c:178) ==97737== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97737== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97737== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97737== by 0x4A58EC8: tsearch (tsearch.c:290) ==97737== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97737== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97737== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97737== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97737== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97737== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97737== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97737== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97737== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97737== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97737== by 0x497836B: setlocale (setlocale.c:337) ==97737== by 0x109047: main (first.c:157) ==97737== ==97737== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97737== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97737== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97737== by 0x4A58EC8: tsearch (tsearch.c:290) ==97737== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97737== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97737== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97737== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97737== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97737== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97737== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97737== by 0x497836B: setlocale (setlocale.c:337) ==97737== by 0x109047: main (first.c:157) ==97737== ==97737== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97737== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97737== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97737== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97737== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97737== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97737== by 0x496CB0F: gcCMD (33792): ../libtool --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/valgrind520 ./libtest/lib520 ftp://127.0.0.1:45903/520 > log/7/stdout520 2> log/7/stderr520 onv_parseconfdir (gconv_parseconfdir.h:139) ==97737== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97737== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97737== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97737== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97737== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97737== by 0x497836B: setlocale (setlocale.c:337) ==97737== by 0x109047: main (first.c:157) ==97737== ==97737== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97737== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97737== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97737== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97737== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97737== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97737== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97737== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97737== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97737== by 0x497836B: setlocale (setlocale.c:337) ==97737== by 0x109047: main (first.c:157) ==97737== ==97737== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97737== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97737== by 0x48DC163: Curl_open (url.c:510) ==97737== by 0x487CCEF: curl_easy_init (easy.c:368) ==97737== by 0x10908A: UnknownInlinedFun (lib513.c:47) ==97737== by 0x10908A: main (first.c:178) ==97737== ==97737== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97737== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97737== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97737== by 0x4A58EC8: tsearch (tsearch.c:290) ==97737== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97737== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97737== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97737== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97737== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97737== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97737== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97737== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97737== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97737== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97737== by 0x497836B: setlocale (setlocale.c:337) ==97737== by 0x109047: main (first.c:157) ==97737== ==97737== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97737== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97737== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97737== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97737== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97737== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97737== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97737== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97737== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97737== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97737== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97737== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97737== by 0x497836B: setlocale (setlocale.c:337) ==97737== by 0x109047: main (first.c:157) ==97737== === End of file valgrind513 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/7/valgrind520 ./libtest/lib520 ftp://127.0.0.1:45903/520 > log/7/stdout520 2> log/7/stderr520 520: 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 520 === 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:45903/520 === End of file stderr520 === Start of file valgrind520 ==97956== ==97956== Process terminating with default action of signal 4 (SIGILL) ==97956== Illegal opcode at address 0x48DC18B ==97956== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97956== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97956== by 0x48DC18B: Curl_open (url.c:519) ==97956== by 0x487CCEF: curl_easy_init (easy.c:368) ==97956== by 0x10908A: UnknownInlinedFun (lib520.c:38) ==97956== by 0x10908A: main (first.c:178) ==97956== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97956== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97956== by 0x4A58EC8: tsearch (tsearch.c:290) ==97956== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97956== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97956== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97956== by 0x497836B: setlocale (setlocale.c:337) ==97956== by 0x109047: main (first.c:157) ==97956== ==97956== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97956== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97956== by 0x4A58EC8: tsearch (tsearch.c:290) ==97956== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97956== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97956== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97956== by 0x497836B: setlocale (setlocale.c:337) ==97956== by 0x109047: main (first.c:157) ==97956== ==97956== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97956== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97956== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97956== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97956== by 0x497836B: setlocale (setlocale.c:337) ==97956== by 0x109047: main (first.c:157) ==97956== ==97956== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97956== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97956== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97956== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97956== 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/3/valgrind507 ./libtest/lib507 http://non-existing-host.haxx.se/ > log/3/stdout507 2> log/3/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/10/valgrind519 ./libtest/lib519 http://127.0.0.1:36145/519 > log/10/stdout519 2> log/10/stderr519 497836B: setlocale (setlocale.c:337) ==97956== by 0x109047: main (first.c:157) ==97956== ==97956== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97956== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97956== by 0x48DC163: Curl_open (url.c:510) ==97956== by 0x487CCEF: curl_easy_init (easy.c:368) ==97956== by 0x10908A: UnknownInlinedFun (lib520.c:38) ==97956== by 0x10908A: main (first.c:178) ==97956== ==97956== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97956== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97956== by 0x4A58EC8: tsearch (tsearch.c:290) ==97956== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97956== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97956== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97956== by 0x497836B: setlocale (setlocale.c:337) ==97956== by 0x109047: main (first.c:157) ==97956== ==97956== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97956== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97956== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97956== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97956== by 0x497836B: setlocale (setlocale.c:337) ==97956== by 0x109047: main (first.c:157) ==97956== === End of file valgrind520 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/3/valgrind507 ./libtest/lib507 http://non-existing-host.haxx.se/ > log/3/stdout507 2> log/3/stderr507 lib507 returned 132, when expecting 6 507: exit FAILED == Contents of files in the log/3/ dir after test 507 === Start of file server.cmd Testnum 507 === End of file server.cmd === Start of file stderr507 URL: http://non-existing-host.haxx.se/ === End of file stderr507 === Start of file valgrind507 ==97337== ==97337== Process terminating with default action of signal 4 (SIGILL) ==97337== Illegal opcode at address 0x48DC18B ==97337== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97337== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97337== by 0x48DC18B: Curl_open (url.c:519) ==97337== by 0x487CCEF: curl_easy_init (easy.c:368) ==97337== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==97337== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==97337== by 0x1092F1: test.part.0 (lib507.c:45) ==97337== by 0x10909E: UnknownInlinedFun (lib507.c:43) ==97337== by 0x10909E: main (first.c:178) ==97337== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==97337== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97337== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97337== by 0x4A58EC8: tsearch (tsearch.c:290) ==97337== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97337== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97337== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97337== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97337== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97337== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97337== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97337== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97337== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97337== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97337== by 0x497836B: setlocale (setlocale.c:337) ==97337== by 0x109047: main (first.c:157) ==97337== ==97337== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==97337== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97337== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97337== by 0x4A58EC8: tsearch (tsearch.c:290) ==97337== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97337== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97337== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97337== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97337== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97337== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97337== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97337== by 0x497836B: setlocale (setlocale.c:337) ==97337== by 0x109047: main (first.c:157) ==97337== ==97337== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==97337== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97337== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97337== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97337== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97337== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97337== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97337== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97337== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97337== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97337== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97337== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97337== by 0x497836B: setlocale (setlocale.c:337) ==97337== by 0x109047: main (first.c:157) ==97337== ==97337== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==97337== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97337== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97337== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97337== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97337== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97337== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97337== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97337== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97337== by 0x497836B: setlocale (setlocale.c:337) ==97337== by 0x109047: main (first.c:157) ==97337== ==97337== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==97337== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97337== by 0x48DC163: Curl_open (url.c:510) ==97337== by 0x487CCEF: curl_easy_init (easy.c:368) ==97337== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==97337== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==97337== by 0x1092F1: test.part.0 (lib507.c:45) ==97337== by 0x10909E: UnknownInlinedFun (lib507.c:43) ==97337== by 0x10909E: main (first.c:178) ==97337== ==97337== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==97337== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97337== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97337== by 0x4A58EC8: tsearch (tsearch.c:290) ==97337== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97337== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97337== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97337== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97337== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97337== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97337== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97337== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97337== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97337== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97337== by 0x497836B: setlocale (setlocale.c:337) ==97337== by 0x109047: main (first.c:157) ==97337== ==97337== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==97337== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97337== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97337== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97337== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97337== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97337== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97337== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97337== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97337== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97337== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97337== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97337== by 0x497836B: setlocale (setlocale.c:337) ==97337== by 0x109047: main (first.c:157) ==97337== === End of file valgrind507 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/10/valgrind519 ./libtest/lib519 http://127.0.0.1:36145/519 > log/10/stdout519 2> log/10/stderr519 519: 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 519 === Start of file server.cmd Testnum 519 === End of file server.cmd === Start of file stderr519 URL: http://127.0.0.1:36145/519 === End of file stderr519 === Start of file valgrind519 ==97955== ==97955== Process terminating with default action of signal 4 (SIGILL) ==97955== Illegal opcode at address 0x48DC18B ==97955== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97955== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97955== by 0x48DC18B: Curl_open (url.c:519) ==97955== by 0x487CCEF: curl_easy_init (easy.c:368) ==97955== by 0x10908A: UnknownInlinedFun (lib519.c:38) ==97955== by 0x10908A: main (first.c:178) ==97955== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97955== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97955== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97955== by 0x4A58EC8: tsearch (tsearch.c:290) ==97955== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97955== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97955== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97955== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97955== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97955== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97955== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97955== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97955== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97955== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97955== by 0x497836B: setlocale (setlocale.c:337) ==97955== by 0x109047: main (first.c:157) ==97955== ==97955== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97955== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97955== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97955== by 0x4A58EC8: tsearch (tsearch.c:290) ==97955== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97955== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97955== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97955== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97955== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97955== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97955== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97955== by 0x497836B: setlocale (setlocale.c:337) ==97955== by 0x109047: main (first.c:157) ==97955== ==97955== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97955== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97955== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97955== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97955== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97955== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97955== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97955== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97955== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97955== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97955== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97955== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97955== by 0x497836B: setlocale (setlocale.c:337) ==97955== by 0x109047: main (first.c:157) ==97955== ==97955== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97955== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97955== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97955== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97955== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97955== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97955== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97955== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97955== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97955== by 0x497836B: setlocale (setlocale.c:337) ==97955== by 0x109047: main (first.c:157) ==97955== ==97955== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97955== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97955== by 0x48DC163: Curl_open (url.c:510) ==97955== by 0x487CCEF: curl_easy_init (easy.c:368) ==97955== by 0x10908A: UnknownInlinedFun (lib519.c:38) ==97955== by 0x10908A: main (first.c:178) ==97955== ==97955== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97955== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97955== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97955== by 0x4A58EC8: tsearch (tsearch.c:290) ==97955== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97955== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97955== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97955== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97955== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97955== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97955== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97955== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97955== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97955== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97955== by 0x497836B: setlocale (setlocale.c:337) ==97955== by 0x109047: main (first.c:157) ==97955== ==97955== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97955== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97955== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97955== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97955== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97955== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97955== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97955=CMD (33792): ../libtool --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/valgrind521 ./libtest/lib521 ftp://127.0.0.1/521/ 43509 > log/8/stdout521 2> log/8/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/12/valgrind522 ./libtest/lib521 http://127.0.0.1/522 44175 > log/12/stdout522 2> log/12/stderr522 = by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97955== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97955== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97955== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97955== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97955== by 0x497836B: setlocale (setlocale.c:337) ==97955== by 0x109047: main (first.c:157) ==97955== === End of file valgrind519 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/8/valgrind521 ./libtest/lib521 ftp://127.0.0.1/521/ 43509 > log/8/stdout521 2> log/8/stderr521 521: 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 521 === 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 ==98114== ==98114== Process terminating with default action of signal 4 (SIGILL) ==98114== Illegal opcode at address 0x48DC18B ==98114== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98114== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98114== by 0x48DC18B: Curl_open (url.c:519) ==98114== by 0x487CCEF: curl_easy_init (easy.c:368) ==98114== by 0x10909C: UnknownInlinedFun (lib521.c:38) ==98114== by 0x10909C: main (first.c:178) ==98114== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98114== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98114== by 0x4A58EC8: tsearch (tsearch.c:290) ==98114== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98114== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98114== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98114== by 0x497836B: setlocale (setlocale.c:337) ==98114== by 0x109047: main (first.c:157) ==98114== ==98114== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98114== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98114== by 0x4A58EC8: tsearch (tsearch.c:290) ==98114== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98114== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98114== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98114== by 0x497836B: setlocale (setlocale.c:337) ==98114== by 0x109047: main (first.c:157) ==98114== ==98114== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98114== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98114== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98114== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98114== by 0x497836B: setlocale (setlocale.c:337) ==98114== by 0x109047: main (first.c:157) ==98114== ==98114== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98114== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98114== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98114== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98114== by 0x497836B: setlocale (setlocale.c:337) ==98114== by 0x109047: main (first.c:157) ==98114== ==98114== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98114== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98114== by 0x48DC163: Curl_open (url.c:510) ==98114== by 0x487CCEF: curl_easy_init (easy.c:368) ==98114== by 0x10909C: UnknownInlinedFun (lib521.c:38) ==98114== by 0x10909C: main (first.c:178) ==98114== ==98114== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98114== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98114== by 0x4A58EC8: tsearch (tsearch.c:290) ==98114== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98114== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98114== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98114== by 0x497836B: setlocale (setlocale.c:337) ==98114== by 0x109047: main (first.c:157) ==98114== ==98114== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98114== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98114== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98114== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98114== by 0x497836B: setlocale (setlocale.c:337) ==98114== by 0x109047: main (first.c:157) ==98114== === End of file valgrind521 CMD (33792): ../libtool --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/valgrind523 ./libtest/lib523 http://www.example.com:999/523 http://127.0.0.1:39283 > log/1/stdout523 2> log/1/stderr523 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/12/valgrind522 ./libtest/lib521 http://127.0.0.1/522 44175 > log/12/stdout522 2> log/12/stderr522 522: stdout FAILED: --- log/12/check-expected 2024-05-23 11:16:14.800280005 +0200 +++ log/12/check-generated 2024-05-23 11:16:14.800280005 +0200 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/12/ dir after test 522 === Start of file check-expected hello[LF] === End of file check-expected === Start of file server.cmd Testnum 522 === End of file server.cmd === Start of file stderr522 URL: http://127.0.0.1/522 === End of file stderr522 === Start of file valgrind522 ==98118== ==98118== Process terminating with default action of signal 4 (SIGILL) ==98118== Illegal opcode at address 0x48DC18B ==98118== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98118== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98118== by 0x48DC18B: Curl_open (url.c:519) ==98118== by 0x487CCEF: curl_easy_init (easy.c:368) ==98118== by 0x10909C: UnknownInlinedFun (lib521.c:38) ==98118== by 0x10909C: main (first.c:178) ==98118== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98118== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98118== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98118== by 0x4A58EC8: tsearch (tsearch.c:290) ==98118== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98118== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98118== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98118== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98118== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98118== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98118== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98118== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98118== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98118== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98118== by 0x497836B: setlocale (setlocale.c:337) ==98118== by 0x109047: main (first.c:157) ==98118== ==98118== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98118== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98118== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98118== by 0x4A58EC8: tsearch (tsearch.c:290) ==98118== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98118== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98118== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98118== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98118== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98118== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98118== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98118== by 0x497836B: setlocale (setlocale.c:337) ==98118== by 0x109047: main (first.c:157) ==98118== ==98118== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98118== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98118== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98118== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98118== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98118== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98118== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98118== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98118== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98118== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98118== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98118== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98118== by 0x497836B: setlocale (setlocale.c:337) ==98118== by 0x109047: main (first.c:157) ==98118== ==98118== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98118== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98118== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98118== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98118== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98118== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98118== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98118== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98118== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98118== by 0x497836B: setlocale (setlocale.c:337) ==98118== by 0x109047: main (first.c:157) ==98118== ==98118== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98118== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98118== by 0x48DC163: Curl_open (url.c:510) ==98118== by 0x487CCEF: curl_easy_init (easy.c:368) ==98118== by 0x10909C: UnknownInlinedFun (lib521.c:38) ==98118== by 0x10909C: main (first.c:178) ==98118== ==98118== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98118== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98118== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98118== by 0x4A58EC8: tsearch (tsearch.c:290) ==98118== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98118== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98118== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98118== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98118== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98118== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98118== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98118== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98118== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98118== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98118== by 0x497836B: setlocale (setlocale.c:337) ==98118== by 0x109047: main (first.c:157) ==98118== ==98118== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98118== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98118== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98118== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98118== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98118== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98118== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98118== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98118== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98118== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98118== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98118== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98118== by 0x497836B: setlocale (setlocale.c:337) ==98118== by 0x109047: main (first.c:157) ==98118== === End of file valgrind522 CMD (33792): ../libtool --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/valgrind527 ./libtest/lib527 ftp://127.0.0.1:36091/path/527 > log/11/stdout527 2> log/11/stderr527 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/1/valgrind523 ./libtest/lib523 http://www.example.com:999/523 http://127.0.0.1:39283 > log/1/stdout523 2> log/1/stderr523 523: stdout FAILED: --- log/1/check-expected 2024-05-23 11:16:14.816947013 +0200 +++ log/1/check-generated 2024-05-23 11:16:14.816947013 +0200 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/1/ dir after test 523 === Start of file check-expected hello[LF] === End of file check-expected === Start of file server.cmd Testnum 523 === End of file server.cmd === Start of file stderr523 URL: http://www.example.com:999/523 === End of file stderr523 === Start of file valgrind523 ==98120== ==98120== Process terminating with default action of signal 4 (SIGILL) ==98120== Illegal opcode at address 0x48DC18B ==98120== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98120== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98120== by 0x48DC18B: Curl_open (url.c:519) ==98120== by 0x487CCEF: curl_easy_init (easy.c:368) ==98120== by 0x109098: UnknownInlinedFun (lib523.c:38) ==98120== by 0x109098: main (first.c:178) ==98120== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98120== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98120== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98120== by 0x4A58EC8: tsearch (tsearch.c:290) ==98120== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98120== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98120== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98120== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98120== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98120== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98120== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98120== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98120== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98120== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98120== by 0x497836B: setlocale (setlocale.c:337) ==98120== by 0x109045: main (first.c:157) ==98120== ==98120== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98120== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98120== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98120== by 0x4A58EC8: tsearch (tsearch.c:290) ==98120== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98120== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98120== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98120== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98120== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98120== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98120== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98120== by 0x497836B: setlocale (setlocale.c:337) ==98120== by 0x109045: main (first.c:157) ==98120== ==98120== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98120== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98120== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98120== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98120== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98120== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98120== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98120== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98120== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98120== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98120== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98120== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98120== by 0x497836B: setlocale (setlocale.c:337) ==98120== by 0x109045: main (first.c:157) ==98120== ==98120== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98120== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98120== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98120== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98120== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98120== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98120== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98120== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98120== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98120== by 0x497836B: setlocale (setlocale.c:337) ==98120== by 0x109045: main (first.c:157) ==98120== ==98120== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98120== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98120== by 0x48DC163: Curl_open (url.c:510) ==98120== by 0x487CCEF: curl_easy_init (easy.c:368) ==98120== by 0x109098: UnknownInlinedFun (lib523.c:38) ==98120== by 0x109098: main (first.c:178) ==98120== ==98120== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98120== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98120== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98120== by 0x4A58EC8: tsearch (tsearch.c:290) ==98120== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98120== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98120== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98120== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98120== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98120== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98120== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98120== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98120== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98120== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98120== by 0x497836B: setlocale (setlocale.c:337) ==98120== by 0x109045: main (first.c:157) ==98120== ==98120== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98120== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98120== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98120== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98120== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98120== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98120== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98120== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98120== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98120== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98120== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98120== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98120== by 0x497836B: setlocale (setlocale.c:337) ==98120== by 0x109045: main (first.c:157) ==98120== === End of file valgrind523 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/11/valgrind527 ./libtest/lib527 ftp://127.0.0.1:36091/path/527 > log/11/stdout527 2> log/11/stderr527 527: 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 527 === Start of file server.cmd Testnum 527 === End of file server.cmd === Start of file stderr527 URL: ftp://127.0.0.1:36091/path/527 === End of file stderr527 === Start of file valgrind527 ==98261== ==98261== Process terminating with default action of signal 4 (SIGILL) ==98261== Illegal opcode at address 0x48DC18B ==98261== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98261== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98261== CMD (33792): ../libtool --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/valgrind526 ./libtest/lib526 ftp://127.0.0.1:35155/path/526 > log/5/stdout526 2> log/5/stderr526 CMD (33792): ../libtool --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/valgrind524 ./libtest/lib524 ftp://127.0.0.1:42239/path/to/ > log/2/stdout524 2> log/2/stderr524 CMD (33792): ../libtool --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/valgrind525 ./libtest/lib525 ftp://127.0.0.1:35103/path/525 log/6/upload525 > log/6/stdout525 2> log/6/stderr525 by 0x48DC18B: Curl_open (url.c:519) ==98261== by 0x487CCEF: curl_easy_init (easy.c:368) ==98261== by 0x109288: test (lib526.c:73) ==98261== by 0x109076: main (first.c:178) ==98261== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98261== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98261== by 0x4A58EC8: tsearch (tsearch.c:290) ==98261== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98261== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98261== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98261== by 0x497836B: setlocale (setlocale.c:337) ==98261== by 0x109047: main (first.c:157) ==98261== ==98261== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98261== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98261== by 0x4A58EC8: tsearch (tsearch.c:290) ==98261== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98261== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98261== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98261== by 0x497836B: setlocale (setlocale.c:337) ==98261== by 0x109047: main (first.c:157) ==98261== ==98261== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98261== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98261== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98261== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98261== by 0x497836B: setlocale (setlocale.c:337) ==98261== by 0x109047: main (first.c:157) ==98261== ==98261== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98261== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98261== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98261== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98261== by 0x497836B: setlocale (setlocale.c:337) ==98261== by 0x109047: main (first.c:157) ==98261== ==98261== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98261== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98261== by 0x48DC163: Curl_open (url.c:510) ==98261== by 0x487CCEF: curl_easy_init (easy.c:368) ==98261== by 0x109288: test (lib526.c:73) ==98261== by 0x109076: main (first.c:178) ==98261== ==98261== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98261== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98261== by 0x4A58EC8: tsearch (tsearch.c:290) ==98261== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98261== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98261== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98261== by 0x497836B: setlocale (setlocale.c:337) ==98261== by 0x109047: main (first.c:157) ==98261== ==98261== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98261== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98261== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98261== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98261== by 0x497836B: setlocale (setlocale.c:337) ==98261== by 0x109047: main (first.c:157) ==98261== === End of file valgrind527 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/2/valgrind524 ./libtest/lib524 ftp://127.0.0.1:42239/path/to/ > log/2/stdout524 2> log/2/stderr524 524: 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 524 === Start of file server.cmd Testnum 524 === End of file server.cmd === Start of file stderr524 URL: ftp://127.0.0.1:42239/path/to/ === End of file stderr524 === Start of file valgrind524 ==98258== ==98258== Process terminating with default action of signal 4 (SIGILL) ==98258== Illegal opcode at address 0x48DC18B ==98258== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98258== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98258== by 0x48DC18B: Curl_open (url.c:519) ==98258== by 0x487CCEF: curl_easy_init (easy.c:368) ==98258== by 0x10908A: UnknownInlinedFun (lib524.c:38) ==98258== by 0x10908A: main (first.c:178) ==98258== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98258== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98258== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98258== by 0x4A58EC8: tsearch (tsearch.c:290) ==98258== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98258== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98258== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98258== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98258== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98258== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98258== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98258== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98258== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98258== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98258== by 0x497836B: setlocale (setlocale.c:337) ==98258== by 0x109047: main (first.c:157) ==98258== ==98258== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98258== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98258== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98258== by 0x4A58EC8: tsearch (tsearch.c:290) ==98258== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98258== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98258== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98258== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98258== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98258== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98258== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98258== by 0x497836B: setlocale (setlocale.c:337) ==98258== by 0x109047: main (first.c:157) ==98258== ==98258== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98258== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98258== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98258== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98258== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98258== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98258== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98258== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98258== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98258== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98258== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98258== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98258== by 0x497836B: setlocale (setlocale.c:337) ==98258== by 0x109047: main (first.c:157) ==98258== ==98258== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98258== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98258== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98258== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98258== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98258== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98258== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98258== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98258== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98258== by 0x497836B: setlocale (setlocale.c:337) ==98258== by 0x109047: main (first.c:157) ==98258== ==98258== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98258== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98258== by 0x48DC163: Curl_open (url.c:510) ==98258== by 0x487CCEF: curl_easy_init (easy.c:368) ==98258== by 0x10908A: UnknownInlinedFun (lib524.c:38) ==98258== by 0x10908A: main (first.c:178) ==98258== ==98258== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98258== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98258== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98258== by 0x4A58EC8: tsearch (tsearch.c:290) ==98258== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98258== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98258== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98258== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98258== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98258== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98258== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98258== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98258== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98258== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98258== by 0x497836B: setlocale (setlocale.c:337) ==98258== by 0x109047: main (first.c:157) ==98258== ==98258== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98258== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98258== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98258== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98258== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98258== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98258== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98258== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98258== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98258== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98258== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98258== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98258== by 0x497836B: setlocale (setlocale.c:337) ==98258== by 0x109047: main (first.c:157) ==98258== === End of file valgrind524 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/5/valgrind526 ./libtest/lib526 ftp://127.0.0.1:35155/path/526 > log/5/stdout526 2> log/5/stderr526 526: 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 526 === Start of file server.cmd Testnum 526 === End of file server.cmd === Start of file stderr526 URL: ftp://127.0.0.1:35155/path/526 === End of file stderr526 === Start of file valgrind526 ==98259== ==98259== Process terminating with default action of signal 4 (SIGILL) ==98259== Illegal opcode at address 0x48DC18B ==98259== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98259== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98259== by 0x48DC18B: Curl_open (url.c:519) ==98259== by 0x487CCEF: curl_easy_init (easy.c:368) ==98259== by 0x109288: test (lib526.c:73) ==98259== by 0x109076: main (first.c:178) ==98259== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98259== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98259== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98259== by 0x4A58EC8: tsearch (tsearch.c:290) ==98259== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98259== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98259== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98259== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98259== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98259== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98259== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98259== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98259== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98259== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98259== by 0x497836B: setlocale (setlocale.c:337) ==98259== by 0x109047: main (first.c:157) ==98259== ==98259== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98259== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98259== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98259== by 0x4A58EC8: tsearch (tsearch.c:290) ==98259== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98259== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98259== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98259== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98259== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98259== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98259== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98259== by 0x497836B: setlocale (setlocale.c:337) ==98259== by 0x109047: main (first.c:157) ==98259== ==98259== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98259== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98259== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98259== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98259== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98259== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98259== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98259== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98259== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98259== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98259== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98259== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98259== by 0x497836B: setlocale (setlocale.c:337) ==98259== by 0x109047: main (first.c:157) ==98259== ==98259== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98259== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98259== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98259== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98259== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98259== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98259== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98259== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98259== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98259== by 0x497836B: setlocale (setlocale.c:337) ==98259== by 0x109047: main (first.c:157) ==98259== ==98259== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98259== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98259== by 0x48DC163: Curl_open (url.c:510) ==98259== by 0x487CCEF: curl_easy_init (easy.c:368) ==98259== by 0x109288: test (lib526.c:73) ==98259== by 0x109076: main (first.c:178) ==98259== ==98259== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98259== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98259== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98259== by 0x4A58EC8: tsearch (tsearch.c:290) ==98259== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98259== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98259== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98259== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98259== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98259== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98259== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98259== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98259== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98259== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98259== by 0x497836B: setlocale (setlocale.c:337) ==98259== by 0x109047: main (first.c:157) ==98259== ==98259== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98259== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98259== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98259== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98259== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98259== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98259== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98259== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98259== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98259== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98259== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98259== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98259== by 0x497836B: setlocale (setlocale.c:337) ==98259== by 0x109047: main (first.c:157) ==98259== === End of file valgrind526 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/6/valgrind525 ./libtest/lib525 ftp://127.0.0.1:35103/path/525 log/6/upload525 > log/6/stdout525 2> log/6/stderr525 525: 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 525 === Start of file server.cmd Testnum 525 === End of file server.cmd === Start of file stderr525 URL: ftp://127.0.0.1:35103/path/525 === End of file stderr525 === Start of file upload525 Moooooooooooo upload this === End of file upload525 === Start of file valgrind525 ==98260== ==98260== Process terminating with default action of signal 4 (SIGILL) ==98260== Illegal opcode at address 0x48DC18B ==98260== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98260== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98260== by 0x48DC18B: Curl_open (url.c:519) ==98260== by 0x487CCEF: curl_easy_init (easy.c:368) ==98260== by 0x10931B: test (lib525.c:82) ==98260== by 0x109087: main (first.c:178) ==98260== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==98260== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98260== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98260== by 0x4A58EC8: tsearch (tsearch.c:290) ==98260== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98260== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98260== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98260== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98260== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98260== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98260== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98260== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98260== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98260== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98260== by 0x497836B: setlocale (setlocale.c:337) ==98260== by 0x109047: main (first.c:157) ==98260== ==98260== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==98260== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98260== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98260== by 0x4A58EC8: tsearch (tsearch.c:290) ==98260== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98260== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98260== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98260== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98260== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98260== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98260== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98260== by 0x497836B: setlocale (setlocale.c:337) ==98260== by 0x109047: main (first.c:157) ==98260== ==98260== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==98260== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98260== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98260== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98260== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98260== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98260== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98260== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98260== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98260== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98260== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98260== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98260== by 0x497836B: setlocale (setlocale.c:337) ==98260== by 0x109047: main (first.c:157) ==98260== ==98260== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==98260== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98260== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98260== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98260== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98260== by 0x49DC34CMD (33792): ../libtool --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/valgrind528 ./libtest/lib526 http://127.0.0.1:40247/path/528 > log/9/stdout528 2> log/9/stderr528 A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98260== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98260== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98260== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98260== by 0x497836B: setlocale (setlocale.c:337) ==98260== by 0x109047: main (first.c:157) ==98260== ==98260== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==98260== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98260== by 0x48DC163: Curl_open (url.c:510) ==98260== by 0x487CCEF: curl_easy_init (easy.c:368) ==98260== by 0x10931B: test (lib525.c:82) ==98260== by 0x109087: main (first.c:178) ==98260== ==98260== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==98260== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98260== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98260== by 0x4A58EC8: tsearch (tsearch.c:290) ==98260== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98260== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98260== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98260== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98260== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98260== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98260== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98260== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98260== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98260== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98260== by 0x497836B: setlocale (setlocale.c:337) ==98260== by 0x109047: main (first.c:157) ==98260== ==98260== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==98260== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98260== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98260== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98260== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98260== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98260== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98260== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98260== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98260== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98260== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98260== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98260== by 0x497836B: setlocale (setlocale.c:337) ==98260== by 0x109047: main (first.c:157) ==98260== === End of file valgrind525 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/9/valgrind528 ./libtest/lib526 http://127.0.0.1:40247/path/528 > log/9/stdout528 2> log/9/stderr528 528: 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 528 === Start of file server.cmd Testnum 528 === End of file server.cmd === Start of file stderr528 URL: http://127.0.0.1:40247/path/528 === End of file stderr528 === Start of file valgrind528 ==98310== ==98310== Process terminating with default action of signal 4 (SIGILL) ==98310== Illegal opcode at address 0x48DC18B ==98310== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98310== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98310== by 0x48DC18B: Curl_open (url.c:519) ==98310== by 0x487CCEF: curl_easy_init (easy.c:368) ==98310== by 0x109288: test (lib526.c:73) ==98310== by 0x109076: main (first.c:178) ==98310== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98310== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98310== by 0x4A58EC8: tsearch (tsearch.c:290) ==98310== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98310== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98310== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98310== by 0x497836B: setlocale (setlocale.c:337) ==98310== by 0x109047: main (first.c:157) ==98310== ==98310== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98310== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98310== by 0x4A58EC8: tsearch (tsearch.c:290) ==98310== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98310== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98310== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98310== by 0x497836B: setlocale (setlocale.c:337) ==98310== by 0x109047: main (first.c:157) ==98310== ==98310== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98310== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98310== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98310== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98310== by 0x497836B: setlocale (setlocale.c:337) ==98310== by 0x109047: main (first.c:157) ==98310== ==98310== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98310== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98310== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98310== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98310== by 0x497836B: setlocale (setlocale.c:337) ==98310== by 0x109047: main (first.c:157) ==98310== ==98310== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98310== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98310== by 0x48DC163: Curl_open (url.c:510) ==98310== by 0x487CCEF: curl_easy_init (easy.c:368) ==98310== by 0x109288: test (lib526.c:73) ==98310== by 0x109076: main (first.c:178) ==98310== ==98310== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98310== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98310== by 0x4A58EC8: tsearch (tsearch.c:290) ==98310== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98310== by 0x496C9A2: add_alias (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/3/valgrind530 ./libtest/lib530 http://127.0.0.1:46313/file530 > log/3/stdout530 2> log/3/stderr530 nv_conf.c:178) ==98310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98310== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98310== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98310== by 0x497836B: setlocale (setlocale.c:337) ==98310== by 0x109047: main (first.c:157) ==98310== ==98310== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98310== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98310== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98310== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98310== by 0x497836B: setlocale (setlocale.c:337) ==98310== by 0x109047: main (first.c:157) ==98310== === End of file valgrind528 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/3/valgrind530 ./libtest/lib530 http://127.0.0.1:46313/file530 > log/3/stdout530 2> log/3/stderr530 lib530 returned 132, when expecting 0 530: exit FAILED == Contents of files in the log/3/ dir after test 530 === Start of file server.cmd Testnum 530 === End of file server.cmd === Start of file stderr530 URL: http://127.0.0.1:46313/file530 start test: 0 0 === End of file stderr530 === Start of file valgrind530 ==98497== ==98497== Process terminating with default action of signal 4 (SIGILL) ==98497== Illegal opcode at address 0x48DC18B ==98497== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98497== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98497== by 0x48DC18B: Curl_open (url.c:519) ==98497== by 0x487CCEF: curl_easy_init (easy.c:368) ==98497== by 0x109B2E: testone (lib530.c:282) ==98497== by 0x10907D: UnknownInlinedFun (lib530.c:374) ==98497== by 0x10907D: main (first.c:178) ==98497== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98497== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98497== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98497== by 0x4A58EC8: tsearch (tsearch.c:290) ==98497== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98497== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98497== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98497== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98497== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98497== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98497== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98497== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98497== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98497== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98497== by 0x497836B: setlocale (setlocale.c:337) ==98497== by 0x109047: main (first.c:157) ==98497== ==98497== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98497== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98497== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98497== by 0x4A58EC8: tsearch (tsearch.c:290) ==98497== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98497== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98497== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98497== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98497== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98497== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98497== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98497== by 0x497836B: setlocale (setlocale.c:337) ==98497== by 0x109047: main (first.c:157) ==98497== ==98497== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98497== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98497== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98497== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98497== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98497== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98497== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98497== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98497== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98497== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98497== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98497== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98497== by 0x497836B: setlocale (setlocale.c:337) ==98497== by 0x109047: main (first.c:157) ==98497== ==98497== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98497== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98497== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98497== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98497== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98497== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98497== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98497== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98497== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98497== by 0x497836B: setlocale (setlocale.c:337) ==98497== by 0x109047: main (first.c:157) ==98497== ==98497== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98497== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98497== by 0x48DC163: Curl_open (url.c:510) ==98497== by 0x487CCEF: curl_easy_init (easy.c:368) ==98497== by 0x109B2E: testone (lib530.c:282) ==98497== by 0x10907D: UnknownInlinedFun (lib530.c:374) ==98497== by 0x10907D: main (first.c:178) ==98497== ==98497== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98497== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98497== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98497== by 0x4A58EC8: tsearch (tsearch.c:290) ==98497== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98497== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98497== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98497== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98497== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98497== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98497== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98497== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98497== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98497== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98497== by 0x497836B: setlocale (setlocale.c:337) ==98497== by 0x109047: main (first.c:157) ==98497== ==98497== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98497== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98497== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98497== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98497== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98497== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98497== by 0x496CD49: 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/7/valgrind529 ./libtest/lib529 ftp://127.0.0.1:45903/path/529 log/7/upload529 > log/7/stdout529 2> log/7/stderr529 CMD (33792): ../libtool --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/valgrind531 ./libtest/lib525 ftp://127.0.0.1:33661/path/531 log/10/upload531 > log/10/stdout531 2> log/10/stderr531 (gconv_parseconfdir.h:170) ==98497== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98497== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98497== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98497== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98497== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98497== by 0x497836B: setlocale (setlocale.c:337) ==98497== by 0x109047: main (first.c:157) ==98497== === End of file valgrind530 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/7/valgrind529 ./libtest/lib529 ftp://127.0.0.1:45903/path/529 log/7/upload529 > log/7/stdout529 2> log/7/stderr529 529: 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 529 === Start of file server.cmd Testnum 529 === End of file server.cmd === Start of file stderr529 URL: ftp://127.0.0.1:45903/path/529 === End of file stderr529 === Start of file upload529 Moooooooooooo upload this === End of file upload529 === Start of file valgrind529 ==98492== ==98492== Process terminating with default action of signal 4 (SIGILL) ==98492== Illegal opcode at address 0x48DC18B ==98492== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98492== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98492== by 0x48DC18B: Curl_open (url.c:519) ==98492== by 0x487CCEF: curl_easy_init (easy.c:368) ==98492== by 0x10931B: test (lib525.c:82) ==98492== by 0x109087: main (first.c:178) ==98492== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==98492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98492== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98492== by 0x4A58EC8: tsearch (tsearch.c:290) ==98492== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98492== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98492== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98492== by 0x497836B: setlocale (setlocale.c:337) ==98492== by 0x109047: main (first.c:157) ==98492== ==98492== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==98492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98492== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98492== by 0x4A58EC8: tsearch (tsearch.c:290) ==98492== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98492== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98492== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98492== by 0x497836B: setlocale (setlocale.c:337) ==98492== by 0x109047: main (first.c:157) ==98492== ==98492== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==98492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98492== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98492== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98492== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98492== by 0x497836B: setlocale (setlocale.c:337) ==98492== by 0x109047: main (first.c:157) ==98492== ==98492== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==98492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98492== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98492== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98492== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98492== by 0x497836B: setlocale (setlocale.c:337) ==98492== by 0x109047: main (first.c:157) ==98492== ==98492== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==98492== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98492== by 0x48DC163: Curl_open (url.c:510) ==98492== by 0x487CCEF: curl_easy_init (easy.c:368) ==98492== by 0x10931B: test (lib525.c:82) ==98492== by 0x109087: main (first.c:178) ==98492== ==98492== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==98492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98492== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98492== by 0x4A58EC8: tsearch (tsearch.c:290) ==98492== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98492== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98492== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98492== by 0x497836B: setlocale (setlocale.c:337) ==98492== by 0x109047: main (first.c:157) ==98492== ==98492== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==98492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98492== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98492== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98492== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98492== by 0x497836B: setlocale (setlocale.c:337) ==98492== by 0x109047: main (first.c:157) ==98492== === End of file valgrind529 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/10/valgrind531 ./libtest/lib525 ftp://127.0.0.1:33661/path/531 log/10/upload531 > log/10/stdout531 2> log/10/stderr531 531: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents 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/12/valgrind533 ./libtest/lib533 ftp://127.0.0.1:41005/path/533 ftp://127.0.0.1:41005/path/533 > log/12/stdout533 2> log/12/stderr533 iles in the log/10/ dir after test 531 === 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:33661/path/531 === End of file stderr531 === Start of file upload531 Moooooooooooo don't upload this === End of file upload531 === Start of file valgrind531 ==98533== ==98533== Process terminating with default action of signal 4 (SIGILL) ==98533== Illegal opcode at address 0x48DC18B ==98533== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98533== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98533== by 0x48DC18B: Curl_open (url.c:519) ==98533== by 0x487CCEF: curl_easy_init (easy.c:368) ==98533== by 0x10931B: test (lib525.c:82) ==98533== by 0x109087: main (first.c:178) ==98533== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==98533== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98533== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98533== by 0x4A58EC8: tsearch (tsearch.c:290) ==98533== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98533== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98533== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98533== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98533== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98533== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98533== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98533== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98533== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98533== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98533== by 0x497836B: setlocale (setlocale.c:337) ==98533== by 0x109047: main (first.c:157) ==98533== ==98533== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==98533== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98533== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98533== by 0x4A58EC8: tsearch (tsearch.c:290) ==98533== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98533== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98533== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98533== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98533== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98533== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98533== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98533== by 0x497836B: setlocale (setlocale.c:337) ==98533== by 0x109047: main (first.c:157) ==98533== ==98533== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==98533== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98533== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98533== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98533== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98533== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98533== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98533== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98533== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98533== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98533== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98533== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98533== by 0x497836B: setlocale (setlocale.c:337) ==98533== by 0x109047: main (first.c:157) ==98533== ==98533== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==98533== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98533== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98533== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98533== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98533== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98533== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98533== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98533== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98533== by 0x497836B: setlocale (setlocale.c:337) ==98533== by 0x109047: main (first.c:157) ==98533== ==98533== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==98533== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98533== by 0x48DC163: Curl_open (url.c:510) ==98533== by 0x487CCEF: curl_easy_init (easy.c:368) ==98533== by 0x10931B: test (lib525.c:82) ==98533== by 0x109087: main (first.c:178) ==98533== ==98533== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==98533== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98533== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98533== by 0x4A58EC8: tsearch (tsearch.c:290) ==98533== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98533== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98533== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98533== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98533== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98533== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98533== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98533== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98533== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98533== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98533== by 0x497836B: setlocale (setlocale.c:337) ==98533== by 0x109047: main (first.c:157) ==98533== ==98533== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==98533== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98533== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98533== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98533== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98533== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98533== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98533== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98533== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98533== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98533== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98533== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98533== by 0x497836B: setlocale (setlocale.c:337) ==98533== by 0x109047: main (first.c:157) ==98533== === End of file valgrind531 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/12/valgrind533 ./libtest/lib533 ftp://127.0.0.1:41005/path/533 ftp://127.0.0.1:41005/path/533 > log/12/stdout533 2> log/12/stderr533 533: 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 533 === 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:41005/path/533 === End of file stderr533 === Start of file valgrind533 ==98673== ==98673== Process terminating with default action of signal 4 (SIGILL) ==98673== Illegal opcode at address 0x48DC18B ==98673== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98673== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98673== by 0x48DC18B: Curl_open (url.c:519) ==98673== by 0x487CCEF: curl_easy_init (easy.c:368) ==98673== by 0x109311: test.part.0 (lib533.c:48) ==98673== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==98673== by 0x1090AF: main (first.c:178) ==98673== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98673== at 0x4842788: malloc (vg_replace_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/8/valgrind532 ./libtest/lib532 ftp://127.0.0.1:43509/path/532 > log/8/stdout532 2> log/8/stderr532 alloc.c:446) ==98673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98673== by 0x4A58EC8: tsearch (tsearch.c:290) ==98673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98673== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98673== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98673== by 0x497836B: setlocale (setlocale.c:337) ==98673== by 0x109047: main (first.c:157) ==98673== ==98673== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98673== by 0x4A58EC8: tsearch (tsearch.c:290) ==98673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98673== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98673== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98673== by 0x497836B: setlocale (setlocale.c:337) ==98673== by 0x109047: main (first.c:157) ==98673== ==98673== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98673== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98673== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98673== by 0x497836B: setlocale (setlocale.c:337) ==98673== by 0x109047: main (first.c:157) ==98673== ==98673== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98673== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98673== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98673== by 0x497836B: setlocale (setlocale.c:337) ==98673== by 0x109047: main (first.c:157) ==98673== ==98673== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98673== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98673== by 0x48DC163: Curl_open (url.c:510) ==98673== by 0x487CCEF: curl_easy_init (easy.c:368) ==98673== by 0x109311: test.part.0 (lib533.c:48) ==98673== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==98673== by 0x1090AF: main (first.c:178) ==98673== ==98673== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98673== by 0x4A58EC8: tsearch (tsearch.c:290) ==98673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98673== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98673== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98673== by 0x497836B: setlocale (setlocale.c:337) ==98673== by 0x109047: main (first.c:157) ==98673== ==98673== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98673== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98673== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98673== by 0x497836B: setlocale (setlocale.c:337) ==98673== by 0x109047: main (first.c:157) ==98673== === End of file valgrind533 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/8/valgrind532 ./libtest/lib532 ftp://127.0.0.1:43509/path/532 > log/8/stdout532 2> log/8/stderr532 532: 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 532 === Start of file server.cmd Testnum 532 === End of file server.cmd === Start of file stderr532 URL: ftp://127.0.0.1:43509/path/532 === End of file stderr532 === Start of file valgrind532 ==98668== ==98668== Process terminating with default action of signal 4 (SIGILL) ==98668== Illegal opcode at address 0x48DC18B ==98668== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98668== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98668== by 0x48DC18B: Curl_open (url.c:519) ==98668== by 0x487CCEF: curl_easy_init (easy.c:368) ==98668== by 0x1092DE: test (lib526.c:73) ==98668== by 0x109076: main (first.c:178) ==98668== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98668== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98668== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98668== by 0x4A58EC8: tsearch (tsearch.c:290) ==98668== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98668== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98668== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98668== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98668== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98668== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98668== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98668== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98668== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98668== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98668== by 0x497836B: setlocale (setlocale.c:337) ==98668== by 0x109047: main (first.c:157) ==98668== ==98668== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98668== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98668== by 0x4A58EC8CMD (33792): ../libtool --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/valgrind534 ./libtest/lib533 ftp://non-existing-host.haxx.se/path/534 ftp://127.0.0.1:35701/path/534 > log/1/stdout534 2> log/1/stderr534 : __tsearch (tsearch.c:337) ==98668== by 0x4A58EC8: tsearch (tsearch.c:290) ==98668== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98668== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98668== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98668== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98668== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98668== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98668== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98668== by 0x497836B: setlocale (setlocale.c:337) ==98668== by 0x109047: main (first.c:157) ==98668== ==98668== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98668== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98668== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98668== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98668== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98668== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98668== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98668== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98668== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98668== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98668== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98668== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98668== by 0x497836B: setlocale (setlocale.c:337) ==98668== by 0x109047: main (first.c:157) ==98668== ==98668== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98668== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98668== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98668== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98668== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98668== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98668== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98668== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98668== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98668== by 0x497836B: setlocale (setlocale.c:337) ==98668== by 0x109047: main (first.c:157) ==98668== ==98668== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98668== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98668== by 0x48DC163: Curl_open (url.c:510) ==98668== by 0x487CCEF: curl_easy_init (easy.c:368) ==98668== by 0x1092DE: test (lib526.c:73) ==98668== by 0x109076: main (first.c:178) ==98668== ==98668== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98668== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98668== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98668== by 0x4A58EC8: tsearch (tsearch.c:290) ==98668== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98668== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98668== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98668== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98668== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98668== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98668== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98668== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98668== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98668== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98668== by 0x497836B: setlocale (setlocale.c:337) ==98668== by 0x109047: main (first.c:157) ==98668== ==98668== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98668== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98668== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98668== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98668== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98668== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98668== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98668== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98668== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98668== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98668== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98668== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98668== by 0x497836B: setlocale (setlocale.c:337) ==98668== by 0x109047: main (first.c:157) ==98668== === End of file valgrind532 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/1/valgrind534 ./libtest/lib533 ftp://non-existing-host.haxx.se/path/534 ftp://127.0.0.1:35701/path/534 > log/1/stdout534 2> log/1/stderr534 534: 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 534 === 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 ==98696== ==98696== Process terminating with default action of signal 4 (SIGILL) ==98696== Illegal opcode at address 0x48DC18B ==98696== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98696== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98696== by 0x48DC18B: Curl_open (url.c:519) ==98696== by 0x487CCEF: curl_easy_init (easy.c:368) ==98696== by 0x109311: test.part.0 (lib533.c:48) ==98696== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==98696== by 0x1090AF: main (first.c:178) ==98696== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98696== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98696== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98696== by 0x4A58EC8: tsearch (tsearch.c:290) ==98696== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98696== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98696== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98696== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98696== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98696== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98696== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98696== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98696== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98696== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98696== by 0x497836B: setlocale (setlocale.c:337) ==98696== by 0x109047: main (first.c:157) ==98696== ==98696== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98696== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98696== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98696== by 0x4A58EC8: tsearch (tsearch.c:290) ==98696== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98696== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98696== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98696== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98696== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98696== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98696== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98696== by 0x497836B: setlocale (setlocale.c:337) ==98696== by 0x109047: main (first.c:157) ==98696== ==98696== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98696== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98696== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98696== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==986CMD (33792): ../libtool --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/valgrind535 ./libtest/lib533 http://127.0.0.1:35843/535 http://127.0.0.1:35843/5350001 > log/11/stdout535 2> log/11/stderr535 96== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98696== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98696== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98696== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98696== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98696== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98696== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98696== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98696== by 0x497836B: setlocale (setlocale.c:337) ==98696== by 0x109047: main (first.c:157) ==98696== ==98696== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98696== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98696== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98696== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98696== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98696== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98696== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98696== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98696== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98696== by 0x497836B: setlocale (setlocale.c:337) ==98696== by 0x109047: main (first.c:157) ==98696== ==98696== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98696== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98696== by 0x48DC163: Curl_open (url.c:510) ==98696== by 0x487CCEF: curl_easy_init (easy.c:368) ==98696== by 0x109311: test.part.0 (lib533.c:48) ==98696== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==98696== by 0x1090AF: main (first.c:178) ==98696== ==98696== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98696== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98696== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98696== by 0x4A58EC8: tsearch (tsearch.c:290) ==98696== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98696== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98696== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98696== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98696== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98696== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98696== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98696== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98696== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98696== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98696== by 0x497836B: setlocale (setlocale.c:337) ==98696== by 0x109047: main (first.c:157) ==98696== ==98696== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98696== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98696== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98696== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98696== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98696== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98696== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98696== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98696== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98696== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98696== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98696== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98696== by 0x497836B: setlocale (setlocale.c:337) ==98696== by 0x109047: main (first.c:157) ==98696== === End of file valgrind534 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/11/valgrind535 ./libtest/lib533 http://127.0.0.1:35843/535 http://127.0.0.1:35843/5350001 > log/11/stdout535 2> log/11/stderr535 535: 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 535 === Start of file server.cmd Testnum 535 === End of file server.cmd === Start of file stderr535 URL: http://127.0.0.1:35843/535 === End of file stderr535 === Start of file valgrind535 ==98814== ==98814== Process terminating with default action of signal 4 (SIGILL) ==98814== Illegal opcode at address 0x48DC18B ==98814== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98814== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98814== by 0x48DC18B: Curl_open (url.c:519) ==98814== by 0x487CCEF: curl_easy_init (easy.c:368) ==98814== by 0x109311: test.part.0 (lib533.c:48) ==98814== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==98814== by 0x1090AF: main (first.c:178) ==98814== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98814== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98814== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98814== by 0x4A58EC8: tsearch (tsearch.c:290) ==98814== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98814== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98814== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98814== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98814== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98814== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98814== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98814== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98814== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98814== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98814== by 0x497836B: setlocale (setlocale.c:337) ==98814== by 0x109047: main (first.c:157) ==98814== ==98814== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98814== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98814== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98814== by 0x4A58EC8: tsearch (tsearch.c:290) ==98814== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98814== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98814== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98814== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98814== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98814== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98814== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98814== by 0x497836B: setlocale (setlocale.c:337) ==98814== by 0x109047: main (first.c:157) ==98814== ==98814== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98814== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98814== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98814== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98814== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98814== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98814== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98814== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98814== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98814== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98814== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98814== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98814== by 0x497836B: setlocale (setlocale.c:337) ==98814== by 0x109047: main (first.c:157) ==98814== ==98814== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98814== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98814== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98814== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98814== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98814=CMD (33792): ../libtool --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/valgrind536 ./libtest/lib536 http://127.0.0.1:44205 goingdirect.com:44205 goingdirect.com:44205:127.0.0.1 > log/2/stdout536 2> log/2/stderr536 = by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98814== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98814== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98814== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98814== by 0x497836B: setlocale (setlocale.c:337) ==98814== by 0x109047: main (first.c:157) ==98814== ==98814== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98814== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98814== by 0x48DC163: Curl_open (url.c:510) ==98814== by 0x487CCEF: curl_easy_init (easy.c:368) ==98814== by 0x109311: test.part.0 (lib533.c:48) ==98814== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==98814== by 0x1090AF: main (first.c:178) ==98814== ==98814== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98814== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98814== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98814== by 0x4A58EC8: tsearch (tsearch.c:290) ==98814== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98814== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98814== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98814== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98814== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98814== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98814== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98814== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98814== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98814== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98814== by 0x497836B: setlocale (setlocale.c:337) ==98814== by 0x109047: main (first.c:157) ==98814== ==98814== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98814== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98814== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98814== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98814== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98814== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98814== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98814== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98814== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98814== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98814== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98814== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98814== by 0x497836B: setlocale (setlocale.c:337) ==98814== by 0x109047: main (first.c:157) ==98814== === End of file valgrind535 CMD (33792): ../libtool --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/valgrind538 ./libtest/lib504 ftp://127.0.0.1:35103/538 > log/6/stdout538 2> log/6/stderr538 CMD (33792): ../libtool --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/valgrind539 ./libtest/lib539 ftp://127.0.0.1:39811/path/to/the/file/539 > log/9/stdout539 2> log/9/stderr539 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/2/valgrind536 ./libtest/lib536 http://127.0.0.1:44205 goingdirect.com:44205 goingdirect.com:44205:127.0.0.1 > log/2/stdout536 2> log/2/stderr536 536: stdout FAILED: --- log/2/check-expected 2024-05-23 11:16:15.980304229 +0200 +++ log/2/check-generated 2024-05-23 11:16:15.980304229 +0200 @@ -1,4 +0,0 @@ -hello[LF] -This used the proxy[LF] -hello[LF] -This DID NOT use the proxy[LF] == Contents of files in the log/2/ dir after test 536 === Start of file check-expected hello[LF] This used the proxy[LF] hello[LF] This DID NOT use the proxy[LF] === End of file check-expected === Start of file server.cmd Testnum 536 === End of file server.cmd === Start of file stderr536 URL: http://127.0.0.1:44205 === End of file stderr536 === Start of file valgrind536 ==98864== ==98864== Process terminating with default action of signal 4 (SIGILL) ==98864== Illegal opcode at address 0x48DC18B ==98864== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98864== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98864== by 0x48DC18B: Curl_open (url.c:519) ==98864== by 0x487CCEF: curl_easy_init (easy.c:368) ==98864== by 0x1090B3: UnknownInlinedFun (lib536.c:51) ==98864== by 0x1090B3: main (first.c:178) ==98864== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98864== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98864== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98864== by 0x4A58EC8: tsearch (tsearch.c:290) ==98864== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98864== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98864== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98864== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98864== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98864== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98864== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98864== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98864== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98864== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98864== by 0x497836B: setlocale (setlocale.c:337) ==98864== by 0x10904B: main (first.c:157) ==98864== ==98864== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98864== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98864== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98864== by 0x4A58EC8: tsearch (tsearch.c:290) ==98864== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98864== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98864== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98864== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98864== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98864== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98864== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98864== by 0x497836B: setlocale (setlocale.c:337) ==98864== by 0x10904B: main (first.c:157) ==98864== ==98864== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98864== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98864== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98864== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98864== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98864== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98864== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98864== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98864== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98864== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98864== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98864== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98864== by 0x497836B: setlocale (setlocale.c:337) ==98864== by 0x10904B: main (first.c:157) ==98864== ==98864== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98864== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98864== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98864== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98864== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98864== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98864== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98864== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98864== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98864== by 0x497836B: setlocale (setlocale.c:337) ==98864== by 0x10904B: main (first.c:157) ==98864== ==98864== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98864== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98864== by 0x48DC163: Curl_open (url.c:510) ==98864== by 0x487CCEF: curl_easy_init (easy.c:368) ==98864== by 0x1090B3: UnknownInlinedFun (lib536.c:51) ==98864== by 0x1090B3: main (first.c:178) ==98864== ==98864== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98864== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98864== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98864== by 0x4A58EC8: tsearch (tsearch.c:290) ==98864== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98864== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98864== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98864== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98864== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98864== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98864== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98864== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98864== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98864== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98864== by 0x497836B: setlocale (setlocale.c:337) ==98864== by 0x10904B: main (first.c:157) ==98864== ==98864== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98864== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98864== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98864== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98864== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98864== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98864== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98864== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98864== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98864== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98864== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98864== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98864== by 0x497836B: setlocale (setlocale.c:337) ==98864== by 0x10904B: main (first.c:157) ==98864== === 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/6/valgrind538 ./libtest/lib504 ftp://127.0.0.1:35103/538 > log/6/stdout538 2> log/6/stderr538 538: 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 538 === 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:35103/538 === End of file stderr538 === Start of file valgrind538 ==98866== ==98866== Process terminating with default action of signal 4 (SIGILL) ==98866== Illegal opcode at address 0x48DC18B ==98866== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98866== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98866== by 0x48DC18B: Curl_open (url.c:519) ==98866== by 0x487CCEF: curl_easy_init (easy.c:368) ==98866== by 0x109311: test.part.0 (lib504.c:51) ==98866== by 0x1090AF: UnknownInlinedFun (lib504.c:49) ==98866== by 0x1090AF: main (first.c:178) ==98866== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98866== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98866== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98866== by 0x4A58EC8: tsearch (tsearch.c:290) ==98866== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98866== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98866== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98866== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98866== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98866== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98866== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98866== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98866== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98866== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98866== by 0x497836B: setlocale (setlocale.c:337) ==98866== by 0x109047: main (first.c:157) ==98866== ==98866== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98866== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98866== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98866== by 0x4A58EC8: tsearch (tsearch.c:290) ==98866== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98866== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98866== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98866== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98866== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98866== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98866== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98866== by 0x497836B: setlocale (setlocale.c:337) ==98866== by 0x109047: main (first.c:157) ==98866== ==98866== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98866== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98866== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98866== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98866== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98866== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98866== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98866== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98866== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98866== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98866== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98866== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98866== by 0x497836B: setlocale (setlocale.c:337) ==98866== by 0x109047: main (first.c:157) ==98866== ==98866== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98866== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98866== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98866== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98866== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98866== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98866== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98866== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98866== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98866== by 0x497836B: setlocale (setlocale.c:337) ==98866== by 0x109047: main (first.c:157) ==98866== ==98866== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98866== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98866== by 0x48DC163: Curl_open (url.c:510) ==98866== by 0x487CCEF: curl_easy_init (easy.c:368) ==98866== by 0x109311: test.part.0 (lib504.c:51) ==98866== by 0x1090AF: UnknownInlinedFun (lib504.c:49) ==98866== by 0x1090AF: main (first.c:178) ==98866== ==98866== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98866== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98866== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98866== by 0x4A58EC8: tsearch (tsearch.c:290) ==98866== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98866== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98866== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98866== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98866== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98866== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98866== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98866== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98866== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98866== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98866== by 0x497836B: setlocale (setlocale.c:337) ==98866== by 0x109047: main (first.c:157) ==98866== ==98866== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98866== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98866== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98866== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98866== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98866== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98866== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98866== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98866== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98866== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98866== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98866== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98866== by 0x497836B: setlocale (setlocale.c:337) ==98866== by 0x109047: main (first.c:157) ==98866== === End of file valgrind538 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/9/valgrind539 ./libtest/lib539 ftp://127.0.0.1:39811/path/to/the/file/539 > log/9/stdout539 2> log/9/stderr539 539: 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 539 === Start of file server.cmd Testnum 539 === End of file server.cmd === Start of file stderr539 URL: ftp://127.0.0.1:39811/path/to/the/file/539 === End of file stderr539 === Start of file valgrind539 ==98865== ==98865== Process terminating with default action of signal 4 (SIGILL) ==98865== Illegal opcode at address 0x48DC18B ==98865== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==98865== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==98865== by 0x48DC18B: Curl_open (url.c:519) ==98865== by 0x487CCEF: curl_easy_init (easy.c:368) ==98865== by 0x10908F: UnknownInlinedFun (lib539.c:40) ==98865== by 0x10908F: main (first.c:178) ==98865== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==98865== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98865== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98865== by 0x4A58EC8: tsearch (tsearch.c:290) ==98865== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98865== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98865== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98865== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98865== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98865== by 0x496CB0F: __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/5/valgrind537 ./libtest/lib537 http://127.0.0.1:33519/537 > log/5/stdout537 2> log/5/stderr537 ==98865== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98865== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98865== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98865== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98865== by 0x497836B: setlocale (setlocale.c:337) ==98865== by 0x10904B: main (first.c:157) ==98865== ==98865== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==98865== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98865== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98865== by 0x4A58EC8: tsearch (tsearch.c:290) ==98865== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98865== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98865== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98865== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98865== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98865== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98865== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98865== by 0x497836B: setlocale (setlocale.c:337) ==98865== by 0x10904B: main (first.c:157) ==98865== ==98865== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==98865== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98865== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98865== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98865== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98865== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98865== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==98865== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==98865== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98865== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98865== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98865== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98865== by 0x497836B: setlocale (setlocale.c:337) ==98865== by 0x10904B: main (first.c:157) ==98865== ==98865== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==98865== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98865== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98865== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==98865== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==98865== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98865== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98865== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98865== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98865== by 0x497836B: setlocale (setlocale.c:337) ==98865== by 0x10904B: main (first.c:157) ==98865== ==98865== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==98865== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==98865== by 0x48DC163: Curl_open (url.c:510) ==98865== by 0x487CCEF: curl_easy_init (easy.c:368) ==98865== by 0x10908F: UnknownInlinedFun (lib539.c:40) ==98865== by 0x10908F: main (first.c:178) ==98865== ==98865== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==98865== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98865== by 0x4A58EC8: __tsearch (tsearch.c:337) ==98865== by 0x4A58EC8: tsearch (tsearch.c:290) ==98865== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==98865== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98865== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98865== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98865== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98865== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98865== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98865== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98865== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98865== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98865== by 0x497836B: setlocale (setlocale.c:337) ==98865== by 0x10904B: main (first.c:157) ==98865== ==98865== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==98865== at 0x4842788: malloc (vg_replace_malloc.c:446) ==98865== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==98865== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==98865== by 0x496C9A2: add_alias (gconv_conf.c:178) ==98865== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==98865== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==98865== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==98865== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==98865== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==98865== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==98865== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==98865== by 0x497836B: setlocale (setlocale.c:337) ==98865== by 0x10904B: main (first.c:157) ==98865== === End of file valgrind539 prechecked ./libtest/lib537 check test 0537...[HTTP GET with a HUGE number of file descriptors open] ../libtool --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/valgrind537 ./libtest/lib537 http://127.0.0.1:33519/537 > log/5/stdout537 2> log/5/stderr537 537: 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 537 === Start of file precheck-537 URL: check initial soft limit: 1024 initial hard limit: 524288 raising soft limit up to hard limit current soft limit: 524288 current hard limit: 524288 allocating memchunk 1048576 byte array initializing memchunk array allocating array for 524277 file descriptors initializing fd array trying to open 524277 file descriptors 524277 file descriptors open Test ended with result 0 === End of file precheck-537 === Start of file server.cmd Testnum 537 === End of file server.cmd === Start of file stderr537 URL: http://127.0.0.1:33519/537 === End of file stderr537 === Start of file valgrind537 ==99163== ==99163== Process terminating with default action of signal 4 (SIGILL) ==99163== Illegal opcode at address 0x490F48E ==99163== at 0x490F48E: formatf.constprop.3 (mprintf.c:795) ==99163== by 0x48B28BA: curl_mvsnprintf (mprintf.c:1061) ==99163== by 0x48B299B: curl_msnprintf (mprintf.c:1081) ==99163== by 0x1094DF: rlimit (lib537.c:142) ==99163== by 0x1090CA: UnknownInlinedFun (lib537.c:466) ==99163== by 0x1090CA: UnknownInlinedFun (lib537.c:452) ==99163== by 0x1090CA: main (first.c:178) ==99163== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==99163== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99163== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99163== by 0x4A58EC8: tsearch (tsearch.c:290) ==99163== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99163== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99163== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99163== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99163== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99163== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99163== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99163== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99163== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99163== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99163== by 0x497836B: setlocale (setlocale.c:337) ==99163== by 0x109047: main (first.c:157) ==99163== ==99163== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==99163== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99163== by 0x4A58EC8: __tsearch (tsearch.c:337) ==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/3/valgrind540 ./libtest/lib540 http://test.remote.example.com/path/540 http://127.0.0.1:46313 silly:person custom.set.host.name > log/3/stdout540 2> log/3/stderr540 9163== by 0x4A58EC8: tsearch (tsearch.c:290) ==99163== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99163== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99163== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99163== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99163== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99163== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99163== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99163== by 0x497836B: setlocale (setlocale.c:337) ==99163== by 0x109047: main (first.c:157) ==99163== ==99163== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==99163== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99163== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99163== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99163== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99163== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99163== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99163== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99163== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99163== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99163== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99163== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99163== by 0x497836B: setlocale (setlocale.c:337) ==99163== by 0x109047: main (first.c:157) ==99163== ==99163== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==99163== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99163== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99163== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99163== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99163== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99163== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99163== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99163== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99163== by 0x497836B: setlocale (setlocale.c:337) ==99163== by 0x109047: main (first.c:157) ==99163== ==99163== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==99163== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99163== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99163== by 0x4A58EC8: tsearch (tsearch.c:290) ==99163== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99163== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99163== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99163== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99163== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99163== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99163== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99163== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99163== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99163== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99163== by 0x497836B: setlocale (setlocale.c:337) ==99163== by 0x109047: main (first.c:157) ==99163== ==99163== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==99163== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99163== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99163== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99163== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99163== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99163== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99163== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99163== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99163== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99163== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99163== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99163== by 0x497836B: setlocale (setlocale.c:337) ==99163== by 0x109047: main (first.c:157) ==99163== === End of file valgrind537 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/3/valgrind540 ./libtest/lib540 http://test.remote.example.com/path/540 http://127.0.0.1:46313 silly:person custom.set.host.name > log/3/stdout540 2> log/3/stderr540 540: 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 540 === Start of file server.cmd connection-monitor Testnum 540 === End of file server.cmd === Start of file stderr540 URL: http://test.remote.example.com/path/540 === End of file stderr540 === Start of file valgrind540 ==99017== ==99017== Process terminating with default action of signal 4 (SIGILL) ==99017== Illegal opcode at address 0x48DC18B ==99017== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99017== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99017== by 0x48DC18B: Curl_open (url.c:519) ==99017== by 0x487CCEF: curl_easy_init (easy.c:368) ==99017== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==99017== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==99017== by 0x109171: UnknownInlinedFun (lib540.c:226) ==99017== by 0x109171: UnknownInlinedFun (lib540.c:195) ==99017== by 0x109171: main (first.c:178) ==99017== 408 bytes in 17 blocks are possibly lost in loss record 602 of 653 ==99017== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99017== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99017== by 0x4A58EC8: tsearch (tsearch.c:290) ==99017== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99017== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99017== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99017== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99017== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99017== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99017== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99017== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99017== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99017== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99017== by 0x497836B: setlocale (setlocale.c:337) ==99017== by 0x10905B: main (first.c:157) ==99017== ==99017== 552 bytes in 23 blocks are possibly lost in loss record 608 of 653 ==99017== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99017== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99017== by 0x4A58EC8: tsearch (tsearch.c:290) ==99017== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99017== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99017== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99017== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99017== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99017== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99017== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99017== by 0x497836B: setlocale (setlocale.c:337) ==99017== by 0x10905B: main (first.c:157) ==99017== ==99017== 681 bytes in 17 blocks are possibly lost in loss record 614 of 653 ==99017== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99017== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99017== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99017== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99017== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99017== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99017== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99017== by 0x49DC34A: __pthread_once_slow.isrCMD (33792): ../libtool --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/valgrind541 ./libtest/lib541 ftp://127.0.0.1:45903/541 log/7/upload541 > log/7/stdout541 2> log/7/stderr541 a.0 (pthread_once.c:116) ==99017== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99017== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99017== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99017== by 0x497836B: setlocale (setlocale.c:337) ==99017== by 0x10905B: main (first.c:157) ==99017== ==99017== 1,018 bytes in 23 blocks are possibly lost in loss record 628 of 653 ==99017== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99017== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99017== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99017== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99017== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99017== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99017== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99017== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99017== by 0x497836B: setlocale (setlocale.c:337) ==99017== by 0x10905B: main (first.c:157) ==99017== ==99017== 5,288 bytes in 1 blocks are definitely lost in loss record 647 of 653 ==99017== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99017== by 0x48DC163: Curl_open (url.c:510) ==99017== by 0x487CCEF: curl_easy_init (easy.c:368) ==99017== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==99017== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==99017== by 0x109171: UnknownInlinedFun (lib540.c:226) ==99017== by 0x109171: UnknownInlinedFun (lib540.c:195) ==99017== by 0x109171: main (first.c:178) ==99017== ==99017== 11,664 bytes in 486 blocks are possibly lost in loss record 650 of 653 ==99017== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99017== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99017== by 0x4A58EC8: tsearch (tsearch.c:290) ==99017== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99017== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99017== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99017== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99017== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99017== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99017== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99017== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99017== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99017== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99017== by 0x497836B: setlocale (setlocale.c:337) ==99017== by 0x10905B: main (first.c:157) ==99017== ==99017== 18,800 bytes in 486 blocks are possibly lost in loss record 652 of 653 ==99017== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99017== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99017== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99017== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99017== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99017== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99017== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99017== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99017== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99017== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99017== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99017== by 0x497836B: setlocale (setlocale.c:337) ==99017== by 0x10905B: main (first.c:157) ==99017== === 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/7/valgrind541 ./libtest/lib541 ftp://127.0.0.1:45903/541 log/7/upload541 > log/7/stdout541 2> log/7/stderr541 541: 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 541 === Start of file server.cmd Testnum 541 === End of file server.cmd === Start of file stderr541 URL: ftp://127.0.0.1:45903/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 ==99021== ==99021== Process terminating with default action of signal 4 (SIGILL) ==99021== Illegal opcode at address 0x48DC18B ==99021== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99021== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99021== by 0x48DC18B: Curl_open (url.c:519) ==99021== by 0x487CCEF: curl_easy_init (easy.c:368) ==99021== by 0x109108: UnknownInlinedFun (lib541.c:81) ==99021== by 0x109108: main (first.c:178) ==99021== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==99021== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99021== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99021== by 0x4A58EC8: tsearch (tsearch.c:290) ==99021== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99021== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99021== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99021== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99021== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99021== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99021== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99021== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99021== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99021== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99021== by 0x497836B: setlocale (setlocale.c:337) ==99021== by 0x10905B: main (first.c:157) ==99021== ==99021== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==99021== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99021== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99021== by 0x4A58EC8: tsearch (tsearch.c:290) ==99021== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99021== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99021== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99021== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99021== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99021== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99021== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99021== by 0x497836B: setlocale (setlocale.c:337) ==99021== by 0x10905B: main (first.c:157) ==99021== ==99021== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==99021== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99021== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99021== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99021== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99021== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99021== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99021== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99021== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99021== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99021== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99021== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99021== by 0x497836B: setlocale (setlocale.c:337) ==99021== by 0x10905B: main (first.c:157) ==99021== ==99021== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==99021== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99021== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99021== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99021== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99021== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99021== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) CMD (33792): ../libtool --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/valgrind542 ./libtest/lib542 ftp://127.0.0.1:33661/542 > log/10/stdout542 2> log/10/stderr542 ==99021== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99021== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99021== by 0x497836B: setlocale (setlocale.c:337) ==99021== by 0x10905B: main (first.c:157) ==99021== ==99021== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==99021== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99021== by 0x48DC163: Curl_open (url.c:510) ==99021== by 0x487CCEF: curl_easy_init (easy.c:368) ==99021== by 0x109108: UnknownInlinedFun (lib541.c:81) ==99021== by 0x109108: main (first.c:178) ==99021== ==99021== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==99021== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99021== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99021== by 0x4A58EC8: tsearch (tsearch.c:290) ==99021== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99021== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99021== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99021== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99021== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99021== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99021== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99021== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99021== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99021== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99021== by 0x497836B: setlocale (setlocale.c:337) ==99021== by 0x10905B: main (first.c:157) ==99021== ==99021== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==99021== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99021== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99021== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99021== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99021== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99021== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99021== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99021== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99021== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99021== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99021== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99021== by 0x497836B: setlocale (setlocale.c:337) ==99021== by 0x10905B: main (first.c:157) ==99021== === End 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/10/valgrind542 ./libtest/lib542 ftp://127.0.0.1:33661/542 > log/10/stdout542 2> log/10/stderr542 542: 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 542 === Start of file server.cmd Testnum 542 === End of file server.cmd === Start of file stderr542 URL: ftp://127.0.0.1:33661/542 === End of file stderr542 === Start of file valgrind542 ==99032== ==99032== Process terminating with default action of signal 4 (SIGILL) ==99032== Illegal opcode at address 0x48DC18B ==99032== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99032== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99032== by 0x48DC18B: Curl_open (url.c:519) ==99032== by 0x487CCEF: curl_easy_init (easy.c:368) ==99032== by 0x109088: UnknownInlinedFun (lib542.c:47) ==99032== by 0x109088: main (first.c:178) ==99032== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99032== by 0x4A58EC8: tsearch (tsearch.c:290) ==99032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99032== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99032== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99032== by 0x497836B: setlocale (setlocale.c:337) ==99032== by 0x109045: main (first.c:157) ==99032== ==99032== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99032== by 0x4A58EC8: tsearch (tsearch.c:290) ==99032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99032== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99032== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99032== by 0x497836B: setlocale (setlocale.c:337) ==99032== by 0x109045: main (first.c:157) ==99032== ==99032== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99032== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99032== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99032== by 0x497836B: setlocale (setlocale.c:337) ==99032== by 0x109045: main (first.c:157) ==99032== ==99032== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99032== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99032== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99032== by 0x497836B: setlocale (setlocale.c:337) ==99032== by 0x109045: main (first.c:157) ==99032== ==99032== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99032== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99032== by 0x48DC163: Curl_open (url.c:510) ==99032== by 0x487CCEF: curl_easy_init (easy.c:368) ==99032== by 0x109088: UnknownInlinedFun (lib542.c:47) ==99032== by 0x109088: main (first.c:178) ==99032== ==99032== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99032== by 0x4A58EC8: tsearch (tsearch.c:290) ==99032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99032== by 0x496CDCMD (33792): ../libtool --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/valgrind543 ./libtest/lib543 - > log/12/stdout543 2> log/12/stderr543 49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99032== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99032== by 0x497836B: setlocale (setlocale.c:337) ==99032== by 0x109045: main (first.c:157) ==99032== ==99032== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99032== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99032== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99032== by 0x497836B: setlocale (setlocale.c:337) ==99032== by 0x109045: main (first.c:157) ==99032== === End of file valgrind542 CMD (33792): ../libtool --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/valgrind544 ./libtest/lib544 http://127.0.0.1:33791/544 > log/8/stdout544 2> log/8/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/12/valgrind543 ./libtest/lib543 - > log/12/stdout543 2> log/12/stderr543 543: stdout FAILED: --- log/12/check-expected 2024-05-23 11:16:16.750320035 +0200 +++ log/12/check-generated 2024-05-23 11:16:16.750320035 +0200 @@ -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/12/ 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 server.cmd Testnum 543 === End of file server.cmd === Start of file stderr543 URL: - === End of file stderr543 === Start of file valgrind543 ==99230== ==99230== Process terminating with default action of signal 4 (SIGILL) ==99230== Illegal opcode at address 0x48DC18B ==99230== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99230== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99230== by 0x48DC18B: Curl_open (url.c:519) ==99230== by 0x487CCEF: curl_easy_init (easy.c:368) ==99230== by 0x109091: UnknownInlinedFun (lib543.c:42) ==99230== by 0x109091: UnknownInlinedFun (lib543.c:30) ==99230== by 0x109091: main (first.c:178) ==99230== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99230== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99230== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99230== by 0x4A58EC8: tsearch (tsearch.c:290) ==99230== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99230== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99230== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99230== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99230== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99230== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99230== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99230== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99230== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99230== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99230== by 0x497836B: setlocale (setlocale.c:337) ==99230== by 0x10904E: main (first.c:157) ==99230== ==99230== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99230== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99230== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99230== by 0x4A58EC8: tsearch (tsearch.c:290) ==99230== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99230== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99230== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99230== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99230== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99230== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99230== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99230== by 0x497836B: setlocale (setlocale.c:337) ==99230== by 0x10904E: main (first.c:157) ==99230== ==99230== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99230== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99230== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99230== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99230== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99230== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99230== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99230== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99230== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99230== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99230== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99230== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99230== by 0x497836B: setlocale (setlocale.c:337) ==99230== by 0x10904E: main (first.c:157) ==99230== ==99230== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99230== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99230== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99230== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99230== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99230== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99230== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99230== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99230== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99230== by 0x497836B: setlocale (setlocale.c:337) ==99230== by 0x10904E: main (first.c:157) ==99230== ==99230== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99230== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99230== by 0x48DC163: Curl_open (url.c:510) ==99230== by 0x487CCEF: curl_easy_init (easy.c:368) ==99230== by 0x109091: UnknownInlinedFun (lib543.c:42) ==99230== by 0x109091: UnknownInlinedFun (lib543.c:30) ==99230== by 0x109091: main (first.c:178) ==99230== ==99230== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99230== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99230== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99230== by 0x4A58EC8: tsearch (tsearch.c:290) ==99230== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99230== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99230== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99230== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99230== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99230== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99230== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99230== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99230== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99230== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99230== by 0x497836B: setlocale (setlocale.c:337) ==99230== by 0x10904E: main (first.c:157) ==99230== ==99230== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99230== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99230== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99230== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99230== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99230== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99230== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99230== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99230== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99230== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99230== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99230== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99230== by 0x497836B: setlocale (setlocale.c:337) ==99230== by 0x10904E: main (first.c:157) ==99230== === 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/8/valgrind544 ./libtest/lib544 http://127.0.0.1:33791/544 > log/8/stdout544 2> log/8/stderr544 544: 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 544 === Start of file server.cmd Testnum 544 === End of file server.cmd === Start of file stderr544 URL: http://127.0.0.1:33791/544 === End of file stderr544 === Start of file valgrind544 ==99249== ==99249== Process terminating with default action of 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/1/valgrind545 ./libtest/lib545 http://127.0.0.1:39283/545 > log/1/stdout545 2> log/1/stderr545 ignal 4 (SIGILL) ==99249== Illegal opcode at address 0x48DC18B ==99249== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99249== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99249== by 0x48DC18B: Curl_open (url.c:519) ==99249== by 0x487CCEF: curl_easy_init (easy.c:368) ==99249== by 0x109088: UnknownInlinedFun (lib544.c:44) ==99249== by 0x109088: main (first.c:178) ==99249== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99249== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99249== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99249== by 0x4A58EC8: tsearch (tsearch.c:290) ==99249== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99249== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99249== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99249== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99249== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99249== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99249== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99249== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99249== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99249== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99249== by 0x497836B: setlocale (setlocale.c:337) ==99249== by 0x109045: main (first.c:157) ==99249== ==99249== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99249== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99249== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99249== by 0x4A58EC8: tsearch (tsearch.c:290) ==99249== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99249== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99249== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99249== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99249== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99249== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99249== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99249== by 0x497836B: setlocale (setlocale.c:337) ==99249== by 0x109045: main (first.c:157) ==99249== ==99249== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99249== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99249== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99249== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99249== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99249== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99249== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99249== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99249== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99249== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99249== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99249== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99249== by 0x497836B: setlocale (setlocale.c:337) ==99249== by 0x109045: main (first.c:157) ==99249== ==99249== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99249== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99249== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99249== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99249== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99249== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99249== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99249== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99249== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99249== by 0x497836B: setlocale (setlocale.c:337) ==99249== by 0x109045: main (first.c:157) ==99249== ==99249== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99249== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99249== by 0x48DC163: Curl_open (url.c:510) ==99249== by 0x487CCEF: curl_easy_init (easy.c:368) ==99249== by 0x109088: UnknownInlinedFun (lib544.c:44) ==99249== by 0x109088: main (first.c:178) ==99249== ==99249== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99249== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99249== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99249== by 0x4A58EC8: tsearch (tsearch.c:290) ==99249== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99249== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99249== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99249== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99249== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99249== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99249== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99249== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99249== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99249== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99249== by 0x497836B: setlocale (setlocale.c:337) ==99249== by 0x109045: main (first.c:157) ==99249== ==99249== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99249== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99249== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99249== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99249== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99249== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99249== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99249== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99249== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99249== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99249== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99249== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99249== by 0x497836B: setlocale (setlocale.c:337) ==99249== by 0x109045: main (first.c:157) ==99249== === 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/1/valgrind545 ./libtest/lib545 http://127.0.0.1:39283/545 > log/1/stdout545 2> log/1/stderr545 545: 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 545 === Start of file server.cmd Testnum 545 === End of file server.cmd === Start of file stderr545 URL: http://127.0.0.1:39283/545 === End of file stderr545 === Start of file valgrind545 ==99289== ==99289== Process terminating with default action of signal 4 (SIGILL) ==99289== Illegal opcode at address 0x48DC18B ==99289== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99289== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99289== by 0x48DC18B: Curl_open (url.c:519) ==99289== by 0x487CCEF: curl_easy_init (easy.c:368) ==99289== by 0x109088: UnknownInlinedFun (lib544.c:44) ==99289== by 0x109088: main (first.c:178) ==99289== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99289== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99289== by 0x4A58EC8: tsearch (tsearch.c:290) ==99289== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99289== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99289== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) =CMD (33792): ../libtool --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/valgrind546 ./libtest/lib533 ftp://127.0.0.1:36091/path/546 ftp://127.0.0.1:36091/path/546 > log/11/stdout546 2> log/11/stderr546 =99289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99289== by 0x497836B: setlocale (setlocale.c:337) ==99289== by 0x109045: main (first.c:157) ==99289== ==99289== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99289== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99289== by 0x4A58EC8: tsearch (tsearch.c:290) ==99289== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99289== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99289== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99289== by 0x497836B: setlocale (setlocale.c:337) ==99289== by 0x109045: main (first.c:157) ==99289== ==99289== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99289== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99289== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99289== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99289== by 0x497836B: setlocale (setlocale.c:337) ==99289== by 0x109045: main (first.c:157) ==99289== ==99289== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99289== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99289== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99289== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99289== by 0x497836B: setlocale (setlocale.c:337) ==99289== by 0x109045: main (first.c:157) ==99289== ==99289== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99289== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99289== by 0x48DC163: Curl_open (url.c:510) ==99289== by 0x487CCEF: curl_easy_init (easy.c:368) ==99289== by 0x109088: UnknownInlinedFun (lib544.c:44) ==99289== by 0x109088: main (first.c:178) ==99289== ==99289== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99289== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99289== by 0x4A58EC8: tsearch (tsearch.c:290) ==99289== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99289== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99289== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99289== by 0x497836B: setlocale (setlocale.c:337) ==99289== by 0x109045: main (first.c:157) ==99289== ==99289== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99289== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99289== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99289== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99289== by 0x497836B: setlocale (setlocale.c:337) ==99289== by 0x109045: main (first.c:157) ==99289== === 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/9/valgrind549 ./libtest/lib549 ftp://www.example.com/moo/549 http://127.0.0.1:40247 > log/9/stdout549 2> log/9/stderr549 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/11/valgrind546 ./libtest/lib533 ftp://127.0.0.1:36091/path/546 ftp://127.0.0.1:36091/path/546 > log/11/stdout546 2> log/11/stderr546 546: stdout FAILED: --- log/11/check-expected 2024-05-23 11:16:16.930323730 +0200 +++ log/11/check-generated 2024-05-23 11:16:16.930323730 +0200 @@ -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/11/ 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 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:36091/path/546 === End of file stderr546 === Start of file valgrind546 ==99372== ==99372== Process terminating with default action of signal 4 (SIGILL) ==99372== Illegal opcode at address 0x48DC18B ==99372== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99372== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99372== by 0x48DC18B: Curl_open (url.c:519) ==99372== by 0x487CCEF: curl_easy_init (easy.c:368) ==99372== by 0x109311: test.part.0 (lib533.c:48) ==99372== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==99372== by 0x1090AF: main (first.c:178) ==99372== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99372== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99372== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99372== by 0x4A58EC8: tsearch (tsearch.c:290) ==99372== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99372== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99372== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99372== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99372== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99372== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99372== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99372== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99372== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99372== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99372== by 0x497836B: setlocale (setlocale.c:337) ==99372== by 0x109047: main (first.c:157) ==99372== ==99372== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99372== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99372== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99372== by 0x4A58EC8: tsearch (tsearch.c:290) ==99372== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99372== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99372== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99372== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99372== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99372== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99372== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99372== by 0x497836B: setlocale (setlocale.c:337) ==99372== by 0x109047: main (first.c:157) ==99372== ==99372== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99372== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99372== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99372== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99372== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99372== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99372== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99372== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99372== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99372== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99372== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99372== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99372== by 0x497836B: setlocale (setlocale.c:337) ==99372== by 0x109047: main (first.c:157) ==99372== ==99372== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99372== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99372== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99372== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99372== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99372== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99372== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99372== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99372== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99372== by 0x497836B: setlocale (setlocale.c:337) ==99372== by 0x109047: main (first.c:157) ==99372== ==99372== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99372== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99372== by 0x48DC163: Curl_open (url.c:510) ==99372== by 0x487CCEF: curl_easy_init (easy.c:368) ==99372== by 0x109311: test.part.0 (lib533.c:48) ==99372== by 0x1090AF: UnknownInlinedFun (lib533.c:46) ==99372== by 0x1090AF: main (first.c:178) ==99372== ==99372== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99372== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99372== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99372== by 0x4A58EC8: tsearch (tsearch.c:290) ==99372== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99372== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99372== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99372== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99372== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99372== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99372== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99372== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99372== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99372== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99372== by 0x497836B: setlocale (setlocale.c:337) ==99372== by 0x109047: main (first.c:157) ==99372== ==99372== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99372== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99372== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99372== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99372== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99372== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99372== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99372== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99372== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99372== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99372== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99372== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99372== by 0x497836B: setlocale (setlocale.c:337) ==99372== by 0x109047: main (first.c:157) ==99372== === End of file valgrind546 CMD (33792): ../libtool --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/valgrind548 ./libtest/lib548 http://test.remote.example.com/path/548 http://127.0.0.1:41583 testuser:testpass > log/6/stdout548 2> log/6/stderr548 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/9/valgrind549 ./libtest/lib549 ftp://www.example.com/moo/549 http://127.0.0.1:40247 > log/9/stdout549 2> log/9/stderr549 549: stdout FAILED: --- log/9/check-expected 2024-05-23 11:16:16.950324140 +0200 +++ log/9/check-generated 2024-05-23 11:16:16.950324140 +0200 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/9/ dir after test 549 === Start of file check-expected hello[LF] === End of file check-expected === Start of file server.cmd Testnum 549 === End of file server.cmd === Start of file stderr549 URL: ftp://www.example.com/moo/549 === End of file stderr549 === Start of file valgrind549 ==99416== ==99416== Process terminating with default action of signal 4 (SIGILL) ==99416== Illegal opcode at address 0x48DC18B ==99416== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99416== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99416== by 0x48DC18B: Curl_open (url.c:519) ==99416== by 0x487CCEF: curl_easy_init (easy.c:368) ==99416== by 0x1090A8: UnknownInlinedFun (lib549.c:43) ==99416== by 0x1090A8: main (first.c:178) ==99416== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99416== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99416== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99416== by 0x4A58EC8: tsearch (tsearch.c:290) ==99416== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99416== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99416== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99416== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99416== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99416== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99416== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99416== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99416== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99416== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99416== by 0x497836B: setlocale (setlocale.c:337) ==99416== by 0x109045: main (first.c:157) ==99416== ==99416== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99416== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99416== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99416== by 0x4A58EC8: tsearch (tsearch.c:290) ==99416== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99416== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99416== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99416== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99416== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99416== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99416== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99416== by 0x497836B: setlocale (setlocale.c:337) ==99416== by 0x109045: main (first.c:157) ==99416== ==99416== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99416== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99416== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99416== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99416== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99416== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99416== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99416== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99416== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99416== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99416== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99416== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99416== by 0x497836B: setlocale (setlocale.c:337) ==99416== by 0x109045: main (first.c:157) ==99416== ==99416== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99416== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99416== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99416== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99416== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99416== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99416== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99416== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99416== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99416== by 0x497836B: setlocale (setlocale.c:337) ==99416== by 0x109045: main (first.c:157) ==99416== ==99416== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99416== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99416== by 0x48DC163: Curl_open (url.c:510) ==99416== by 0x487CCEF: curl_easy_init (easy.c:368) ==99416== by 0x1090A8: UnknownInlinedFun (lib549.c:43) ==99416== by 0x1090A8: main (first.c:178) ==99416== ==99416== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99416== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99416== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99416== by 0x4A58EC8: tsearch (tsearch.c:290) ==99416== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99416== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99416== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99416== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99416== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99416== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99416== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99416== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99416== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99416== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99416== by 0x497836B: setlocale (setlocale.c:337) ==99416== by 0x109045: main (first.c:157) ==99416== ==99416== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99416== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99416== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99416== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99416== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99416== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99416== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99416== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99416== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99416== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99416== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99416== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99416== by 0x497836B: setlocale (setlocale.c:337) ==99416== by 0x109045: main (first.c:157) ==99416== === End of file valgrind549 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/6/valgrind548 ./libtest/lib548 http://test.remote.example.com/path/548 http://127.0.0.1:41583 testuser:testpass > log/6/stdout548 2> log/6/stderr548 548: 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 548 === Start of file server.cmd Testnum 548 === End of file server.cmd === Start of file stderr548 URL: http://test.remote.example.com/path/548 === End of file stderr548 === Start of file valgrind548 ==99415== ==99415== Process terminating with default action of signal 4 (SIGILL) ==99415== Illegal opcode at address 0x48DC18B ==99415== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==9941CMD (33792): ../libtool --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/valgrind547 ./libtest/lib547 http://test.remote.example.com/path/547 http://127.0.0.1:44205 testuser:testpass > log/2/stdout547 2> log/2/stderr547 5== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99415== by 0x48DC18B: Curl_open (url.c:519) ==99415== by 0x487CCEF: curl_easy_init (easy.c:368) ==99415== by 0x1090AA: UnknownInlinedFun (lib547.c:88) ==99415== by 0x1090AA: main (first.c:178) ==99415== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99415== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99415== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99415== by 0x4A58EC8: tsearch (tsearch.c:290) ==99415== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99415== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99415== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99415== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99415== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99415== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99415== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99415== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99415== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99415== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99415== by 0x497836B: setlocale (setlocale.c:337) ==99415== by 0x109047: main (first.c:157) ==99415== ==99415== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99415== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99415== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99415== by 0x4A58EC8: tsearch (tsearch.c:290) ==99415== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99415== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99415== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99415== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99415== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99415== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99415== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99415== by 0x497836B: setlocale (setlocale.c:337) ==99415== by 0x109047: main (first.c:157) ==99415== ==99415== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99415== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99415== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99415== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99415== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99415== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99415== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99415== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99415== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99415== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99415== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99415== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99415== by 0x497836B: setlocale (setlocale.c:337) ==99415== by 0x109047: main (first.c:157) ==99415== ==99415== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99415== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99415== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99415== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99415== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99415== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99415== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99415== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99415== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99415== by 0x497836B: setlocale (setlocale.c:337) ==99415== by 0x109047: main (first.c:157) ==99415== ==99415== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99415== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99415== by 0x48DC163: Curl_open (url.c:510) ==99415== by 0x487CCEF: curl_easy_init (easy.c:368) ==99415== by 0x1090AA: UnknownInlinedFun (lib547.c:88) ==99415== by 0x1090AA: main (first.c:178) ==99415== ==99415== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99415== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99415== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99415== by 0x4A58EC8: tsearch (tsearch.c:290) ==99415== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99415== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99415== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99415== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99415== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99415== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99415== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99415== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99415== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99415== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99415== by 0x497836B: setlocale (setlocale.c:337) ==99415== by 0x109047: main (first.c:157) ==99415== ==99415== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99415== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99415== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99415== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99415== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99415== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99415== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99415== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99415== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99415== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99415== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99415== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99415== by 0x497836B: setlocale (setlocale.c:337) ==99415== by 0x109047: main (first.c:157) ==99415== === End of file valgrind548 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/2/valgrind547 ./libtest/lib547 http://test.remote.example.com/path/547 http://127.0.0.1:44205 testuser:testpass > log/2/stdout547 2> log/2/stderr547 547: 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 547 === Start of file server.cmd Testnum 547 === End of file server.cmd === Start of file stderr547 URL: http://test.remote.example.com/path/547 === End of file stderr547 === Start of file valgrind547 ==99419== ==99419== Process terminating with default action of signal 4 (SIGILL) ==99419== Illegal opcode at address 0x48DC18B ==99419== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99419== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99419== by 0x48DC18B: Curl_open (url.c:519) ==99419== by 0x487CCEF: curl_easy_init (easy.c:368) ==99419== by 0x1090C0: UnknownInlinedFun (lib547.c:88) ==99419== by 0x1090C0: main (first.c:178) ==99419== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99419== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99419== by 0x4A58EC8: tsearch (tsearch.c:290) ==99419== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99419== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99419== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99CMD (33792): ../libtool --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/valgrind500 ./libtest/lib500 http://127.0.0.1:41947/500 log/4/ip500 > log/4/stdout500 2> log/4/stderr500 CMD (33792): ../libtool --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/valgrind550 ./libtest/lib549 ftp://www.example.com/moo/550 http://127.0.0.1:33519 ascii > log/5/stdout550 2> log/5/stderr550 419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99419== by 0x497836B: setlocale (setlocale.c:337) ==99419== by 0x109056: main (first.c:157) ==99419== ==99419== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99419== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99419== by 0x4A58EC8: tsearch (tsearch.c:290) ==99419== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99419== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99419== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99419== by 0x497836B: setlocale (setlocale.c:337) ==99419== by 0x109056: main (first.c:157) ==99419== ==99419== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99419== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99419== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99419== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99419== by 0x497836B: setlocale (setlocale.c:337) ==99419== by 0x109056: main (first.c:157) ==99419== ==99419== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99419== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99419== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99419== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99419== by 0x497836B: setlocale (setlocale.c:337) ==99419== by 0x109056: main (first.c:157) ==99419== ==99419== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99419== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99419== by 0x48DC163: Curl_open (url.c:510) ==99419== by 0x487CCEF: curl_easy_init (easy.c:368) ==99419== by 0x1090C0: UnknownInlinedFun (lib547.c:88) ==99419== by 0x1090C0: main (first.c:178) ==99419== ==99419== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99419== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99419== by 0x4A58EC8: tsearch (tsearch.c:290) ==99419== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99419== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99419== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99419== by 0x497836B: setlocale (setlocale.c:337) ==99419== by 0x109056: main (first.c:157) ==99419== ==99419== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99419== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99419== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99419== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99419== by 0x497836B: setlocale (setlocale.c:337) ==99419== by 0x109056: main (first.c:157) ==99419== === End of file valgrind547 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/4/valgrind500 ./libtest/lib500 http://127.0.0.1:41947/500 log/4/ip500 > log/4/stdout500 2> log/4/stderr500 500: 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 500 === Start of file server.cmd Testnum 500 === End of file server.cmd === Start of file stderr500 URL: http://127.0.0.1:41947/500 === End of file stderr500 === Start of file valgrind500 ==97103== ==97103== Process terminating with default action of signal 4 (SIGILL) ==97103== Illegal opcode at address 0x48DC18B ==97103== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==97103== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==97103== by 0x48DC18B: Curl_open (url.c:519) ==97103== by 0x487CCEF: curl_easy_init (easy.c:368) ==97103== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==97103== by 0x1090C4: main (first.c:178) ==97103== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==97103== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97103== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97103== by 0x4A58EC8: tsearch (tsearch.c:290) ==97103== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97103== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97103== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97103== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97103== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97103== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97103== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97103== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97103== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97103== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97103== by 0x497836B: setlocale (setlocale.c:337) ==97103== by 0x109056: main (first.c:157) ==97103== ==97103== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==97103== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97103== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97103== by 0x4A58EC8: tsearch (tsearch.c:290) ==97103== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97103== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97103== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97103== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97103== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97103== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97103== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97103== by 0x497836B: setlocale (setlocale.c:337) ==97103== by 0x109056: main (first.c:157) ==97103== ==97103== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==97103== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97103== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97103== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97103== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97103== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97103== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==97103== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==97103== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97103== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97103== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97103== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97103== by 0x497836B: setlocale (setlocale.c:337) ==97103== by 0x109056: main (first.c:157) ==97103== ==97103== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==97103== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97103== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97103== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==97103== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==97103== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97103== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97103== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97103== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97103== by 0x497836B: setlocale (setlocale.c:337) ==97103== by 0x109056: main (first.c:157) ==97103== ==97103== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==97103== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==97103== by 0x48DC163: Curl_open (url.c:510) ==97103== by 0x487CCEF: curl_easy_init (easy.c:368) ==97103== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==97103== by 0x1090C4: main (first.c:178) ==97103== ==97103== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==97103== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97103== by 0x4A58EC8: __tsearch (tsearch.c:337) ==97103== by 0x4A58EC8: tsearch (tsearch.c:290) ==97103== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==97103== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97103== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97103== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97103== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97103== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97103== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97103== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97103== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97103== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97103== by 0x497836B: setlocale (setlocale.c:337) ==97103== by 0x109056: main (first.c:157) ==97103== ==97103== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==97103== at 0x4842788: malloc (vg_replace_malloc.c:446) ==97103== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==97103== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==97103== by 0x496C9A2: add_alias (gconv_conf.c:178) ==97103== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==97103== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==97103== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==97103== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==97103== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==97103== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==97103== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==97103== by 0x497836B: setlocale (setlocale.c:337) ==97103== by 0x109056: main (first.c:157) ==97103== === End of file valgrind500 CMD (33792): ../libtool --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/valgrind552 ./libtest/lib552 http://test.remote.example.com/path/552 http://s1lly:pers0n@127.0.0.1:35853/ > log/7/stdout552 2> log/7/stderr552 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/5/valgrind550 ./libtest/lib549 ftp://www.example.com/moo/550 http://127.0.0.1:33519 ascii > log/5/stdout550 2> log/5/stderr550 550: stdout FAILED: --- log/5/check-expected 2024-05-23 11:16:17.096993818 +0200 +++ log/5/check-generated 2024-05-23 11:16:17.096993818 +0200 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/5/ dir after test 550 === Start of file check-expected hello[LF] === End of file check-expected === Start of file server.cmd Testnum 550 === End of file server.cmd === Start of file stderr550 URL: ftp://www.example.com/moo/550 === End of file stderr550 === Start of file valgrind550 ==99565== ==99565== Process terminating with default action of signal 4 (SIGILL) ==99565== Illegal opcode at address 0x48DC18B ==99565== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99565== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99565== by 0x48DC18B: Curl_open (url.c:519) ==99565== by 0x487CCEF: curl_easy_init (easy.c:368) ==99565== by 0x1090A8: UnknownInlinedFun (lib549.c:43) ==99565== by 0x1090A8: main (first.c:178) ==99565== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99565== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99565== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99565== by 0x4A58EC8: tsearch (tsearch.c:290) ==99565== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99565== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99565== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99565== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99565== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99565== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99565== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99565== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99565== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99565== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99565== by 0x497836B: setlocale (setlocale.c:337) ==99565== by 0x109045: main (first.c:157) ==99565== ==99565== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99565== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99565== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99565== by 0x4A58EC8: tsearch (tsearch.c:290) ==99565== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99565== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99565== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99565== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99565== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99565== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99565== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99565== by 0x497836B: setlocale (setlocale.c:337) ==99565== by 0x109045: main (first.c:157) ==99565== ==99565== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99565== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99565== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99565== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99565== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99565== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99565== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99565== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99565== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99565== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99565== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99565== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99565== by 0x497836B: setlocale (setlocale.c:337) ==99565== by 0x109045: main (first.c:157) ==99565== ==99565== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99565== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99565== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99565== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99565== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99565== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99565== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99565== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99565== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99565== by 0x497836B: setlocale (setlocale.c:337) ==99565== by 0x109045: main (first.c:157) ==99565== ==99565== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99565== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99565== by 0x48DC163: Curl_open (url.c:510) ==99565== by 0x487CCEF: curl_easy_init (easy.c:368) ==99565== by 0x1090A8: UnknownInlinedFun (lib549.c:43) ==99565== by 0x1090A8: main (first.c:178) ==99565== ==99565== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99565== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99565== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99565== by 0x4A58EC8: tsearch (tsearch.c:290) ==99565== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99565== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99565== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99565== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99565== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99565== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99565== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99565== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99565== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99565== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99565== by 0x497836B: setlocale (setlocale.c:337) ==99565== by 0x109045: main (first.c:157) ==99565== ==99565== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99565== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99565== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99565== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99565== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99565== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99565== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99565== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99565== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99565== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99565== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99565== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99565== by 0x497836B: setlocale (setlocale.c:337) ==99565== by 0x109045: main (first.c:157) ==99565== === End of file valgrind550 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/7/valgrind552 ./libtest/lib552 http://test.remote.example.com/path/552 http://s1lly:pers0n@127.0.0.1:35853/ > log/7/stdout552 2> log/7/stderr552 552: 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 552 === Start of file server.cmd Testnum 552 === End of file server.cmd === Start of file stderr552 URL: http://test.remote.example.com/path/552 === End of file stderr552 === Start of file valgrind552 ==99618== ==99618== Process terminating with default action of signal 4 (SIGILL) ==99618== Illegal opcode at address 0x48DC18B ==99618== at 0x48DC18B: UnknownInlinedFun (string_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/3/valgrind551 ./libtest/lib547 http://test.remote.example.com/path/551 http://127.0.0.1:46313 s1lly:pers0n > log/3/stdout551 2> log/3/stderr551 ortified.h:59) ==99618== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99618== by 0x48DC18B: Curl_open (url.c:519) ==99618== by 0x487CCEF: curl_easy_init (easy.c:368) ==99618== by 0x1090B2: UnknownInlinedFun (lib552.c:180) ==99618== by 0x1090B2: main (first.c:178) ==99618== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99618== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99618== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99618== by 0x4A58EC8: tsearch (tsearch.c:290) ==99618== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99618== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99618== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99618== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99618== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99618== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99618== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99618== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99618== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99618== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99618== by 0x497836B: setlocale (setlocale.c:337) ==99618== by 0x109057: main (first.c:157) ==99618== ==99618== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99618== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99618== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99618== by 0x4A58EC8: tsearch (tsearch.c:290) ==99618== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99618== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99618== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99618== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99618== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99618== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99618== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99618== by 0x497836B: setlocale (setlocale.c:337) ==99618== by 0x109057: main (first.c:157) ==99618== ==99618== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99618== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99618== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99618== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99618== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99618== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99618== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99618== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99618== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99618== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99618== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99618== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99618== by 0x497836B: setlocale (setlocale.c:337) ==99618== by 0x109057: main (first.c:157) ==99618== ==99618== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99618== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99618== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99618== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99618== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99618== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99618== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99618== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99618== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99618== by 0x497836B: setlocale (setlocale.c:337) ==99618== by 0x109057: main (first.c:157) ==99618== ==99618== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99618== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99618== by 0x48DC163: Curl_open (url.c:510) ==99618== by 0x487CCEF: curl_easy_init (easy.c:368) ==99618== by 0x1090B2: UnknownInlinedFun (lib552.c:180) ==99618== by 0x1090B2: main (first.c:178) ==99618== ==99618== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99618== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99618== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99618== by 0x4A58EC8: tsearch (tsearch.c:290) ==99618== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99618== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99618== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99618== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99618== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99618== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99618== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99618== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99618== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99618== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99618== by 0x497836B: setlocale (setlocale.c:337) ==99618== by 0x109057: main (first.c:157) ==99618== ==99618== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99618== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99618== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99618== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99618== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99618== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99618== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99618== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99618== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99618== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99618== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99618== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99618== by 0x497836B: setlocale (setlocale.c:337) ==99618== by 0x109057: main (first.c:157) ==99618== === End of file valgrind552 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/3/valgrind551 ./libtest/lib547 http://test.remote.example.com/path/551 http://127.0.0.1:46313 s1lly:pers0n > log/3/stdout551 2> log/3/stderr551 551: 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 551 === Start of file server.cmd Testnum 551 === End of file server.cmd === Start of file stderr551 URL: http://test.remote.example.com/path/551 === End of file stderr551 === Start of file valgrind551 ==99619== ==99619== Process terminating with default action of signal 4 (SIGILL) ==99619== Illegal opcode at address 0x48DC18B ==99619== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99619== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99619== by 0x48DC18B: Curl_open (url.c:519) ==99619== by 0x487CCEF: curl_easy_init (easy.c:368) ==99619== by 0x1090C0: UnknownInlinedFun (lib547.c:88) ==99619== by 0x1090C0: main (first.c:178) ==99619== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99619== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99619== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99619== by 0x4A58EC8: tsearch (tsearch.c:290) ==99619== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99619== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99619== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99619== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99619== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99619== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99619== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99619== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthrCMD (33792): ../libtool --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/lib553 http://127.0.0.1:36145/path/553 > log/10/stdout553 2> log/10/stderr553 ead_once.c:143) ==99619== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99619== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99619== by 0x497836B: setlocale (setlocale.c:337) ==99619== by 0x109056: main (first.c:157) ==99619== ==99619== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99619== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99619== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99619== by 0x4A58EC8: tsearch (tsearch.c:290) ==99619== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99619== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99619== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99619== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99619== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99619== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99619== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99619== by 0x497836B: setlocale (setlocale.c:337) ==99619== by 0x109056: main (first.c:157) ==99619== ==99619== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99619== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99619== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99619== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99619== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99619== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99619== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99619== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99619== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99619== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99619== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99619== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99619== by 0x497836B: setlocale (setlocale.c:337) ==99619== by 0x109056: main (first.c:157) ==99619== ==99619== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99619== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99619== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99619== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99619== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99619== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99619== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99619== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99619== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99619== by 0x497836B: setlocale (setlocale.c:337) ==99619== by 0x109056: main (first.c:157) ==99619== ==99619== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99619== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99619== by 0x48DC163: Curl_open (url.c:510) ==99619== by 0x487CCEF: curl_easy_init (easy.c:368) ==99619== by 0x1090C0: UnknownInlinedFun (lib547.c:88) ==99619== by 0x1090C0: main (first.c:178) ==99619== ==99619== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99619== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99619== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99619== by 0x4A58EC8: tsearch (tsearch.c:290) ==99619== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99619== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99619== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99619== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99619== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99619== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99619== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99619== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99619== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99619== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99619== by 0x497836B: setlocale (setlocale.c:337) ==99619== by 0x109056: main (first.c:157) ==99619== ==99619== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99619== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99619== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99619== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99619== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99619== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99619== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99619== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99619== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99619== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99619== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99619== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99619== by 0x497836B: setlocale (setlocale.c:337) ==99619== by 0x109056: main (first.c:157) ==99619== === End of file valgrind551 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/lib553 http://127.0.0.1:36145/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 server.cmd Testnum 553 === End of file server.cmd === Start of file stderr553 URL: http://127.0.0.1:36145/path/553 === End of file stderr553 === Start of file valgrind553 ==99707== ==99707== Process terminating with default action of signal 4 (SIGILL) ==99707== Illegal opcode at address 0x48DC18B ==99707== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99707== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99707== by 0x48DC18B: Curl_open (url.c:519) ==99707== by 0x487CCEF: curl_easy_init (easy.c:368) ==99707== by 0x109092: UnknownInlinedFun (lib553.c:72) ==99707== by 0x109092: main (first.c:178) ==99707== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99707== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99707== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99707== by 0x4A58EC8: tsearch (tsearch.c:290) ==99707== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99707== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99707== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99707== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99707== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99707== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99707== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99707== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99707== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99707== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99707== by 0x497836B: setlocale (setlocale.c:337) ==99707== by 0x10904B: main (first.c:157) ==99707== ==99707== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99707== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99707== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99707== by 0x4A58EC8: tsearch (tsearch.c:290) ==99707== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99707== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99707== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99707== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99707== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99707== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99707== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99707== by 0x497836B: setlocale (setlocale.c:337) ==99707== by 0x10904B: main (first.c:157) ==99707== ==99707== 681 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/11/valgrind557 ./libtest/lib557 nothing > log/11/stdout557 2> log/11/stderr557 tes in 17 blocks are possibly lost in loss record 611 of 650 ==99707== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99707== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99707== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99707== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99707== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99707== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99707== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99707== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99707== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99707== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99707== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99707== by 0x497836B: setlocale (setlocale.c:337) ==99707== by 0x10904B: main (first.c:157) ==99707== ==99707== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99707== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99707== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99707== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99707== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99707== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99707== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99707== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99707== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99707== by 0x497836B: setlocale (setlocale.c:337) ==99707== by 0x10904B: main (first.c:157) ==99707== ==99707== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99707== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99707== by 0x48DC163: Curl_open (url.c:510) ==99707== by 0x487CCEF: curl_easy_init (easy.c:368) ==99707== by 0x109092: UnknownInlinedFun (lib553.c:72) ==99707== by 0x109092: main (first.c:178) ==99707== ==99707== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99707== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99707== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99707== by 0x4A58EC8: tsearch (tsearch.c:290) ==99707== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99707== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99707== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99707== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99707== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99707== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99707== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99707== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99707== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99707== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99707== by 0x497836B: setlocale (setlocale.c:337) ==99707== by 0x10904B: main (first.c:157) ==99707== ==99707== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99707== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99707== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99707== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99707== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99707== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99707== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99707== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99707== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99707== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99707== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99707== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99707== by 0x497836B: setlocale (setlocale.c:337) ==99707== by 0x10904B: main (first.c:157) ==99707== === 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/8/valgrind555 ./libtest/lib555 http://test.remote.example.com/path/555 http://127.0.0.1:33791 testuser:testpass > log/8/stdout555 2> log/8/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/11/valgrind557 ./libtest/lib557 nothing > log/11/stdout557 2> log/11/stderr557 557: stdout FAILED: --- log/11/check-expected 2024-05-23 11:16:17.617004495 +0200 +++ log/11/check-generated 2024-05-23 11:16:17.617004495 +0200 @@ -1,9 +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] == Contents of files in the log/11/ 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] === End of file check-expected === 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 ==99930== ==99930== Process terminating with default action of signal 4 (SIGILL) ==99930== Illegal opcode at address 0x490F48E ==99930== at 0x490F48E: formatf.constprop.3 (mprintf.c:795) ==99930== by 0x48B28BA: curl_mvsnprintf (mprintf.c:1061) ==99930== by 0x48B299B: curl_msnprintf (mprintf.c:1081) ==99930== by 0x1090C9: UnknownInlinedFun (lib557.c:1189) ==99930== by 0x1090C9: UnknownInlinedFun (lib557.c:1481) ==99930== by 0x1090C9: main (first.c:178) ==99930== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==99930== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99930== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99930== by 0x4A58EC8: tsearch (tsearch.c:290) ==99930== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99930== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99930== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99930== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99930== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99930== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99930== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99930== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99930== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99930== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99930== by 0x497836B: setlocale (setlocale.c:337) ==99930== by 0x109061: main (first.c:157) ==99930== ==99930== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==99930== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99930== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99930== by 0x4A58EC8: tsearch (tsearch.c:290) ==99930== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99930== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99930== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99930== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99930== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99930== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99930== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99930== by 0x497836B: setlocale (setlocale.c:337) ==99930== by 0x109061: main (first.c:157) ==99930== ==99930== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==99930== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99930== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99930== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99930== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99930== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99930== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99930== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99930== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99930== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99930== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99930== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99930== by 0x497836B: setlocale (setlocale.c:337) ==99930== by 0x109061: main (first.c:157) ==99930== ==99930== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==99930== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99930== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99930== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99930== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99930== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99930== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99930== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99930== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99930== by 0x497836B: setlocale (setlocale.c:337) ==99930== by 0x109061: main (first.c:157) ==99930== ==99930== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==99930== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99930== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99930== by 0x4A58EC8: tsearch (tsearch.c:290) ==99930== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99930== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99930== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99930== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99930== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99930== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99930== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99930== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99930== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99930== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99930== by 0x497836B: setlocale (setlocale.c:337) ==99930== by 0x109061: main (first.c:157) ==99930== ==99930== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==99930== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99930== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99930== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99930== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99930== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99930== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99930== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99930== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99930== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99930== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99930== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99930== by 0x497836B: setlocale (setlocale.c:337) ==99930== by 0x109061: main (first.c:157) ==99930== === 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/8/valgrind555 ./libtest/lib555 http://test.remote.example.com/path/555 http://127.0.0.1:33791 testuser:testpass > log/8/stdout555 2> log/8/stderr555 555: 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 555 === Start of file server.cmd Testnum 555 === End of file 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/12/valgrind554 ./libtest/lib554 http://127.0.0.1:44175/554 > log/12/stdout554 2> log/12/stderr554 CMD (33792): ../libtool --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/valgrind556 ./libtest/lib556 http://127.0.0.1:39283 > log/1/stdout556 2> log/1/stderr556 rver.cmd === Start of file stderr555 URL: http://test.remote.example.com/path/555 === End of file stderr555 === Start of file valgrind555 ==99786== ==99786== Process terminating with default action of signal 4 (SIGILL) ==99786== Illegal opcode at address 0x48DC18B ==99786== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99786== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99786== by 0x48DC18B: Curl_open (url.c:519) ==99786== by 0x487CCEF: curl_easy_init (easy.c:368) ==99786== by 0x1093E3: test (lib555.c:91) ==99786== by 0x109098: main (first.c:178) ==99786== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99786== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99786== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99786== by 0x4A58EC8: tsearch (tsearch.c:290) ==99786== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99786== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99786== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99786== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99786== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99786== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99786== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99786== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99786== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99786== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99786== by 0x497836B: setlocale (setlocale.c:337) ==99786== by 0x109047: main (first.c:157) ==99786== ==99786== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99786== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99786== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99786== by 0x4A58EC8: tsearch (tsearch.c:290) ==99786== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99786== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99786== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99786== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99786== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99786== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99786== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99786== by 0x497836B: setlocale (setlocale.c:337) ==99786== by 0x109047: main (first.c:157) ==99786== ==99786== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99786== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99786== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99786== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99786== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99786== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99786== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99786== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99786== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99786== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99786== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99786== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99786== by 0x497836B: setlocale (setlocale.c:337) ==99786== by 0x109047: main (first.c:157) ==99786== ==99786== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99786== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99786== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99786== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99786== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99786== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99786== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99786== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99786== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99786== by 0x497836B: setlocale (setlocale.c:337) ==99786== by 0x109047: main (first.c:157) ==99786== ==99786== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99786== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99786== by 0x48DC163: Curl_open (url.c:510) ==99786== by 0x487CCEF: curl_easy_init (easy.c:368) ==99786== by 0x1093E3: test (lib555.c:91) ==99786== by 0x109098: main (first.c:178) ==99786== ==99786== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99786== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99786== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99786== by 0x4A58EC8: tsearch (tsearch.c:290) ==99786== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99786== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99786== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99786== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99786== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99786== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99786== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99786== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99786== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99786== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99786== by 0x497836B: setlocale (setlocale.c:337) ==99786== by 0x109047: main (first.c:157) ==99786== ==99786== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99786== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99786== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99786== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99786== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99786== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99786== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99786== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99786== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99786== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99786== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99786== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99786== by 0x497836B: setlocale (setlocale.c:337) ==99786== by 0x109047: main (first.c:157) ==99786== === End of file valgrind555 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/1/valgrind556 ./libtest/lib556 http://127.0.0.1:39283 > log/1/stdout556 2> log/1/stderr556 556: 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 556 === Start of file server.cmd Testnum 556 === End of file server.cmd === Start of file stderr556 URL: http://127.0.0.1:39283 === End of file stderr556 === Start of file valgrind556 ==99838== ==99838== Process terminating with default action of signal 4 (SIGILL) ==99838== Illegal opcode at address 0x48DC18B ==99838== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99838== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99838== by 0x48DC18B: Curl_open (url.c:519) ==99838== by 0x487CCEF: curl_easy_init (easy.c:368) ==99838== by 0x1091FA: test (lib556.c:50) ==99838== by 0x109076: main (first.c:178) ==99838== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99838== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99838== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99838== by 0x4A58EC8: tsearch (tsearch.c:290) ==99838== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99838== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99838== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99838== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99838== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99838== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99838== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99838== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99838== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99838== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99838== by 0x497836B: setlocale (setlocale.c:337) ==99838== by 0x109047: main (first.c:157) ==99838== ==99838== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99838== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99838== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99838== by 0x4A58EC8: tsearch (tsearch.c:290) ==99838== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99838== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99838== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99838== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99838== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99838== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99838== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99838== by 0x497836B: setlocale (setlocale.c:337) ==99838== by 0x109047: main (first.c:157) ==99838== ==99838== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99838== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99838== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99838== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99838== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99838== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99838== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99838== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99838== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99838== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99838== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99838== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99838== by 0x497836B: setlocale (setlocale.c:337) ==99838== by 0x109047: main (first.c:157) ==99838== ==99838== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99838== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99838== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99838== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99838== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99838== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99838== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99838== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99838== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99838== by 0x497836B: setlocale (setlocale.c:337) ==99838== by 0x109047: main (first.c:157) ==99838== ==99838== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99838== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99838== by 0x48DC163: Curl_open (url.c:510) ==99838== by 0x487CCEF: curl_easy_init (easy.c:368) ==99838== by 0x1091FA: test (lib556.c:50) ==99838== by 0x109076: main (first.c:178) ==99838== ==99838== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99838== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99838== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99838== by 0x4A58EC8: tsearch (tsearch.c:290) ==99838== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99838== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99838== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99838== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99838== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99838== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99838== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99838== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99838== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99838== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99838== by 0x497836B: setlocale (setlocale.c:337) ==99838== by 0x109047: main (first.c:157) ==99838== ==99838== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99838== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99838== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99838== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99838== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99838== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99838== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99838== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99838== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99838== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99838== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99838== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99838== by 0x497836B: setlocale (setlocale.c:337) ==99838== by 0x109047: main (first.c:157) ==99838== === End of file valgrind556 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/12/valgrind554 ./libtest/lib554 http://127.0.0.1:44175/554 > log/12/stdout554 2> log/12/stderr554 554: 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 554 === Start of file server.cmd Testnum 554 === End of file server.cmd === Start of file stderr554 URL: http://127.0.0.1:44175/554 === End of file stderr554 === Start of file valgrind554 ==99782== ==99782== Process terminating with default action of signal 4 (SIGILL) ==99782== Illegal opcode at address 0x48DC18B ==99782== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99782== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99782== by 0x48DC18B: Curl_open (url.c:519) ==99782== by 0x487CCEF: curl_easy_init (easy.c:368) ==99782== by 0x109409: once (lib554.c:149) ==99782== by 0x10908D: UnknownInlinedFun (lib554.c:201) ==99782== by 0x10908D: main (first.c:178) ==99782== 408 bytes in 17 blocks are possibly lost in loss record 616 of 666 ==99782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99782== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99782== by 0x4A58EC8: tsearch (tsearch.c:290) ==99782== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99782== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99782== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99782== by 0x497836B: setlocale (setlocale.c:337) ==99782== by 0x109047: main (first.c:157) ==99782== ==99782== 552 bytes in 23 blocks are possibly lost in loss record 621 of 666 ==99782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99782== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99782== by 0x4A58EC8: tsearch (tsearch.c:290) ==99782== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99782== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99782== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99782== by 0x496B88C: __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/9/valgrind559 ./libtest/lib559 http://127.0.0.1:40247/559 > log/9/stdout559 2> log/9/stderr559 c:692) ==99782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99782== by 0x497836B: setlocale (setlocale.c:337) ==99782== by 0x109047: main (first.c:157) ==99782== ==99782== 681 bytes in 17 blocks are possibly lost in loss record 627 of 666 ==99782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99782== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99782== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99782== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99782== by 0x497836B: setlocale (setlocale.c:337) ==99782== by 0x109047: main (first.c:157) ==99782== ==99782== 1,018 bytes in 23 blocks are possibly lost in loss record 641 of 666 ==99782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99782== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99782== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99782== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99782== by 0x497836B: setlocale (setlocale.c:337) ==99782== by 0x109047: main (first.c:157) ==99782== ==99782== 5,288 bytes in 1 blocks are definitely lost in loss record 660 of 666 ==99782== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99782== by 0x48DC163: Curl_open (url.c:510) ==99782== by 0x487CCEF: curl_easy_init (easy.c:368) ==99782== by 0x109409: once (lib554.c:149) ==99782== by 0x10908D: UnknownInlinedFun (lib554.c:201) ==99782== by 0x10908D: main (first.c:178) ==99782== ==99782== 11,664 bytes in 486 blocks are possibly lost in loss record 663 of 666 ==99782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99782== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99782== by 0x4A58EC8: tsearch (tsearch.c:290) ==99782== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99782== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99782== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99782== by 0x497836B: setlocale (setlocale.c:337) ==99782== by 0x109047: main (first.c:157) ==99782== ==99782== 18,800 bytes in 486 blocks are possibly lost in loss record 665 of 666 ==99782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99782== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99782== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99782== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99782== by 0x497836B: setlocale (setlocale.c:337) ==99782== by 0x109047: main (first.c:157) ==99782== === End of file valgrind554 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/9/valgrind559 ./libtest/lib559 http://127.0.0.1:40247/559 > log/9/stdout559 2> log/9/stderr559 559: data FAILED: --- log/9/check-expected 2024-05-23 11:16:17.873676429 +0200 +++ log/9/check-generated 2024-05-23 11:16:17.873676429 +0200 @@ -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/9/ 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 server.cmd Testnum 559 === End of file server.cmd === Start of file stderr559 URL: http://127.0.0.1:40247/559 === End of file stderr559 === Start of file valgrind559 ==99947== ==99947== Process terminating with default action of signal 4 (SIGILL) ==99947== Illegal opcode at address 0x48DC18B ==99947== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==99947== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==99947== by 0x48DC18B: Curl_open (url.c:519) ==99947== by 0x487CCEF: curl_easy_init (easy.c:368) ==99947== by 0x10908A: UnknownInlinedFun (lib559.c:39) ==99947== by 0x10908A: main (first.c:178) ==99947== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==99947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99947== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99947== by 0x4A58EC8: tsearch (tsearch.c:290) ==99947== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99947== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99947== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99947== by 0x497836B: setlocale (setlocale.c:337) ==99947== by 0x109047: main (first.c:157) ==99947== ==99947== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==99947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99947== by 0x4A58EC8: __tseaCMD (33792): ../libtool --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/valgrind561 ./libtest/lib549 "ftp://www.example.com/moo/561;type=i" http://127.0.0.1:41583 ascii > log/6/stdout561 2> log/6/stderr561 rch (tsearch.c:337) ==99947== by 0x4A58EC8: tsearch (tsearch.c:290) ==99947== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99947== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99947== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99947== by 0x497836B: setlocale (setlocale.c:337) ==99947== by 0x109047: main (first.c:157) ==99947== ==99947== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==99947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99947== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99947== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==99947== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==99947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99947== by 0x497836B: setlocale (setlocale.c:337) ==99947== by 0x109047: main (first.c:157) ==99947== ==99947== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==99947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99947== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99947== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==99947== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==99947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99947== by 0x497836B: setlocale (setlocale.c:337) ==99947== by 0x109047: main (first.c:157) ==99947== ==99947== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==99947== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==99947== by 0x48DC163: Curl_open (url.c:510) ==99947== by 0x487CCEF: curl_easy_init (easy.c:368) ==99947== by 0x10908A: UnknownInlinedFun (lib559.c:39) ==99947== by 0x10908A: main (first.c:178) ==99947== ==99947== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==99947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99947== by 0x4A58EC8: __tsearch (tsearch.c:337) ==99947== by 0x4A58EC8: tsearch (tsearch.c:290) ==99947== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==99947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99947== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99947== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99947== by 0x497836B: setlocale (setlocale.c:337) ==99947== by 0x109047: main (first.c:157) ==99947== ==99947== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==99947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==99947== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==99947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==99947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==99947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==99947== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==99947== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==99947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==99947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==99947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==99947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==99947== by 0x497836B: setlocale (setlocale.c:337) ==99947== by 0x109047: main (first.c:157) ==99947== === End of file valgrind559 CMD (33792): ../libtool --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/valgrind562 ./libtest/lib562 'ftp://127.0.0.1:23456/562;type=A' 42239 > log/2/stdout562 2> log/2/stderr562 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/6/valgrind561 ./libtest/lib549 "ftp://www.example.com/moo/561;type=i" http://127.0.0.1:41583 ascii > log/6/stdout561 2> log/6/stderr561 561: stdout FAILED: --- log/6/check-expected 2024-05-23 11:16:17.890343439 +0200 +++ log/6/check-generated 2024-05-23 11:16:17.890343439 +0200 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/6/ dir after test 561 === Start of file check-expected hello[LF] === End of file check-expected === Start of file server.cmd Testnum 561 === End of file server.cmd === Start of file stderr561 URL: ftp://www.example.com/moo/561;type=i === End of file stderr561 === Start of file valgrind561 ==100003== ==100003== Process terminating with default action of signal 4 (SIGILL) ==100003== Illegal opcode at address 0x48DC18B ==100003== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100003== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100003== by 0x48DC18B: Curl_open (url.c:519) ==100003== by 0x487CCEF: curl_easy_init (easy.c:368) ==100003== by 0x1090A8: UnknownInlinedFun (lib549.c:43) ==100003== by 0x1090A8: main (first.c:178) ==100003== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100003== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100003== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100003== by 0x4A58EC8: tsearch (tsearch.c:290) ==100003== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100003== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100003== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100003== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100003== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100003== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100003== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100003== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100003== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100003== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100003== by 0x497836B: setlocale (setlocale.c:337) ==100003== by 0x109045: main (first.c:157) ==100003== ==100003== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100003== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100003== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100003== by 0x4A58EC8: tsearch (tsearch.c:290) ==100003== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100003== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100003== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100003== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100003== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100003== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100003== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100003== by 0x497836B: setlocale (setlocale.c:337) ==100003== by 0x109045: main (first.c:157) ==100003== ==100003== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100003== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100003== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100003== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100003== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100003== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100003== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100003== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100003== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100003== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100003== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100003== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100003== by 0x497836B: setlocale (setlocale.c:337) ==100003== by 0x109045: main (first.c:157) ==100003== ==100003== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100003== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100003== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100003== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100003== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100003== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100003== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100003== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100003== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100003== by 0x497836B: setlocale (setlocale.c:337) ==100003== by 0x109045: main (first.c:157) ==100003== ==100003== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100003== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100003== by 0x48DC163: Curl_open (url.c:510) ==100003== by 0x487CCEF: curl_easy_init (easy.c:368) ==100003== by 0x1090A8: UnknownInlinedFun (lib549.c:43) ==100003== by 0x1090A8: main (first.c:178) ==100003== ==100003== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100003== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100003== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100003== by 0x4A58EC8: tsearch (tsearch.c:290) ==100003== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100003== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100003== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100003== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100003== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100003== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100003== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100003== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100003== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100003== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100003== by 0x497836B: setlocale (setlocale.c:337) ==100003== by 0x109045: main (first.c:157) ==100003== ==100003== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100003== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100003== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100003== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100003== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100003== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100003== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100003== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100003== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100003== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100003== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100003== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100003== by 0x497836B: setlocale (setlocale.c:337) ==100003== by 0x109045: main (first.c:157) ==100003== === 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/2/valgrind562 ./libtest/lib562 'ftp://127.0.0.1:23456/562;type=A' 42239 > log/2/stdout562 2> log/2/stderr562 562: 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 562 === 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 ==100037== ==100037== Process terminating with default action of signal 4 (SIGILL) ==100037== Illegal opcode at address 0x48DC18BCMD (33792): ../libtool --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/valgrind563 ./libtest/lib562 "ftp://127.0.0.1:23456/563;type=A" 36137 > log/4/stdout563 2> log/4/stderr563 ==100037== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100037== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100037== by 0x48DC18B: Curl_open (url.c:519) ==100037== by 0x487CCEF: curl_easy_init (easy.c:368) ==100037== by 0x10909A: UnknownInlinedFun (lib562.c:51) ==100037== by 0x10909A: main (first.c:178) ==100037== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100037== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100037== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100037== by 0x4A58EC8: tsearch (tsearch.c:290) ==100037== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100037== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100037== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100037== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100037== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100037== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100037== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100037== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100037== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100037== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100037== by 0x497836B: setlocale (setlocale.c:337) ==100037== by 0x109045: main (first.c:157) ==100037== ==100037== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100037== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100037== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100037== by 0x4A58EC8: tsearch (tsearch.c:290) ==100037== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100037== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100037== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100037== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100037== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100037== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100037== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100037== by 0x497836B: setlocale (setlocale.c:337) ==100037== by 0x109045: main (first.c:157) ==100037== ==100037== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100037== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100037== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100037== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100037== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100037== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100037== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100037== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100037== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100037== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100037== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100037== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100037== by 0x497836B: setlocale (setlocale.c:337) ==100037== by 0x109045: main (first.c:157) ==100037== ==100037== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100037== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100037== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100037== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100037== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100037== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100037== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100037== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100037== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100037== by 0x497836B: setlocale (setlocale.c:337) ==100037== by 0x109045: main (first.c:157) ==100037== ==100037== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100037== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100037== by 0x48DC163: Curl_open (url.c:510) ==100037== by 0x487CCEF: curl_easy_init (easy.c:368) ==100037== by 0x10909A: UnknownInlinedFun (lib562.c:51) ==100037== by 0x10909A: main (first.c:178) ==100037== ==100037== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100037== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100037== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100037== by 0x4A58EC8: tsearch (tsearch.c:290) ==100037== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100037== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100037== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100037== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100037== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100037== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100037== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100037== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100037== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100037== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100037== by 0x497836B: setlocale (setlocale.c:337) ==100037== by 0x109045: main (first.c:157) ==100037== ==100037== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100037== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100037== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100037== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100037== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100037== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100037== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100037== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100037== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100037== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100037== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100037== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100037== by 0x497836B: setlocale (setlocale.c:337) ==100037== by 0x109045: main (first.c:157) ==100037== === End of file valgrind562 setenv ftp_proxy = http://127.0.0.1:41947/ 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/4/valgrind563 ./libtest/lib562 "ftp://127.0.0.1:23456/563;type=A" 36137 > log/4/stdout563 2> log/4/stderr563 563: 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 563 === Start of file server.cmd Testnum 563 === End of file server.cmd === Start of file stderr563 URL: ftp://127.0.0.1:23456/563;type=A === End of file stderr563 === Start of file valgrind563 ==100123== ==100123== Process terminating with default action of signal 4 (SIGILL) ==100123== Illegal opcode at address 0x48DC18B ==100123== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100123== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100123== by 0x48DC18B: Curl_open (url.c:519) ==100123== by 0x487CCEF: curl_easy_init (easy.c:368) ==100123== by 0x10909A: UnknownInlinedFun (lib562.c:51) ==100123== by 0x10909A: main (first.c:178) ==100123== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100123== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100123== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100123== by 0x4A58EC8: tsearch (tsearch.c:290) ==100123== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100123== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100123== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100123== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100123== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100123== by 0x496CB0F: __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/7/valgrind565 ./libtest/lib565 http://127.0.0.1:35853/565 > log/7/stdout565 2> log/7/stderr565 nv_read_conf (gconv_conf.c:480) ==100123== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100123== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100123== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100123== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100123== by 0x497836B: setlocale (setlocale.c:337) ==100123== by 0x109045: main (first.c:157) ==100123== ==100123== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100123== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100123== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100123== by 0x4A58EC8: tsearch (tsearch.c:290) ==100123== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100123== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100123== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100123== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100123== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100123== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100123== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100123== by 0x497836B: setlocale (setlocale.c:337) ==100123== by 0x109045: main (first.c:157) ==100123== ==100123== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100123== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100123== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100123== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100123== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100123== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100123== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100123== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100123== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100123== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100123== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100123== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100123== by 0x497836B: setlocale (setlocale.c:337) ==100123== by 0x109045: main (first.c:157) ==100123== ==100123== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100123== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100123== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100123== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100123== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100123== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100123== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100123== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100123== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100123== by 0x497836B: setlocale (setlocale.c:337) ==100123== by 0x109045: main (first.c:157) ==100123== ==100123== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100123== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100123== by 0x48DC163: Curl_open (url.c:510) ==100123== by 0x487CCEF: curl_easy_init (easy.c:368) ==100123== by 0x10909A: UnknownInlinedFun (lib562.c:51) ==100123== by 0x10909A: main (first.c:178) ==100123== ==100123== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100123== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100123== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100123== by 0x4A58EC8: tsearch (tsearch.c:290) ==100123== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100123== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100123== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100123== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100123== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100123== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100123== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100123== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100123== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100123== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100123== by 0x497836B: setlocale (setlocale.c:337) ==100123== by 0x109045: main (first.c:157) ==100123== ==100123== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100123== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100123== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100123== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100123== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100123== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100123== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100123== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100123== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100123== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100123== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100123== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100123== by 0x497836B: setlocale (setlocale.c:337) ==100123== by 0x109045: main (first.c:157) ==100123== === End of file valgrind563 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/7/valgrind565 ./libtest/lib565 http://127.0.0.1:35853/565 > log/7/stdout565 2> log/7/stderr565 565: 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 565 === Start of file server.cmd Testnum 565 === End of file server.cmd === Start of file stderr565 URL: http://127.0.0.1:35853/565 === End of file stderr565 === Start of file valgrind565 ==100177== ==100177== Process terminating with default action of signal 4 (SIGILL) ==100177== Illegal opcode at address 0x48DC18B ==100177== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100177== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100177== by 0x48DC18B: Curl_open (url.c:519) ==100177== by 0x487CCEF: curl_easy_init (easy.c:368) ==100177== by 0x1090A1: UnknownInlinedFun (lib510.c:77) ==100177== by 0x1090A1: main (first.c:178) ==100177== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100177== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100177== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100177== by 0x4A58EC8: tsearch (tsearch.c:290) ==100177== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100177== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100177== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100177== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100177== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100177== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100177== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100177== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100177== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100177== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100177== by 0x497836B: setlocale (setlocale.c:337) ==100177== by 0x109056: main (first.c:157) ==100177== ==100177== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100177== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100177== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100177== by 0x4A58EC8: tsearch (tsearch.c:290) ==100177== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100177== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100177== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100177== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100177== by 0x49DC3C8: 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/3/valgrind566 ./libtest/lib566 http://127.0.0.1:46313/566 log/3/ip566 > log/3/stdout566 2> log/3/stderr566 (pthread_once.c:143) ==100177== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100177== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100177== by 0x497836B: setlocale (setlocale.c:337) ==100177== by 0x109056: main (first.c:157) ==100177== ==100177== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100177== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100177== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100177== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100177== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100177== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100177== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100177== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100177== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100177== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100177== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100177== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100177== by 0x497836B: setlocale (setlocale.c:337) ==100177== by 0x109056: main (first.c:157) ==100177== ==100177== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100177== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100177== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100177== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100177== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100177== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100177== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100177== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100177== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100177== by 0x497836B: setlocale (setlocale.c:337) ==100177== by 0x109056: main (first.c:157) ==100177== ==100177== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100177== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100177== by 0x48DC163: Curl_open (url.c:510) ==100177== by 0x487CCEF: curl_easy_init (easy.c:368) ==100177== by 0x1090A1: UnknownInlinedFun (lib510.c:77) ==100177== by 0x1090A1: main (first.c:178) ==100177== ==100177== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100177== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100177== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100177== by 0x4A58EC8: tsearch (tsearch.c:290) ==100177== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100177== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100177== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100177== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100177== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100177== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100177== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100177== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100177== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100177== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100177== by 0x497836B: setlocale (setlocale.c:337) ==100177== by 0x109056: main (first.c:157) ==100177== ==100177== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100177== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100177== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100177== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100177== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100177== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100177== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100177== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100177== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100177== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100177== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100177== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100177== by 0x497836B: setlocale (setlocale.c:337) ==100177== by 0x109056: main (first.c:157) ==100177== === End of file valgrind565 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/lib566 http://127.0.0.1:46313/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 server.cmd Testnum 566 === End of file server.cmd === Start of file stderr566 URL: http://127.0.0.1:46313/566 === End of file stderr566 === Start of file valgrind566 ==100221== ==100221== Process terminating with default action of signal 4 (SIGILL) ==100221== Illegal opcode at address 0x48DC18B ==100221== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100221== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100221== by 0x48DC18B: Curl_open (url.c:519) ==100221== by 0x487CCEF: curl_easy_init (easy.c:368) ==100221== by 0x1090B4: UnknownInlinedFun (lib566.c:40) ==100221== by 0x1090B4: main (first.c:178) ==100221== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100221== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100221== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100221== by 0x4A58EC8: tsearch (tsearch.c:290) ==100221== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100221== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100221== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100221== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100221== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100221== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100221== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100221== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100221== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100221== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100221== by 0x497836B: setlocale (setlocale.c:337) ==100221== by 0x109056: main (first.c:157) ==100221== ==100221== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100221== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100221== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100221== by 0x4A58EC8: tsearch (tsearch.c:290) ==100221== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100221== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100221== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100221== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100221== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100221== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100221== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100221== by 0x497836B: setlocale (setlocale.c:337) ==100221== by 0x109056: main (first.c:157) ==100221== ==100221== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100221== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100221== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100221== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100221== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100221== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100221== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100221== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100221== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100221== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100221== by 0x496B88C: __gCMD (0): ../src/curl --max-time 13 --output log/10/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:33003/verifiedserver" 2>log/10/rtsp_verify.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/valgrind573 ./libtest/lib573 http://127.0.0.1:41583/573 > log/6/stdout573 2> log/6/stderr573 conv_compare_alias (gconv_db.c:692) ==100221== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100221== by 0x497836B: setlocale (setlocale.c:337) ==100221== by 0x109056: main (first.c:157) ==100221== ==100221== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100221== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100221== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100221== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100221== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100221== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100221== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100221== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100221== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100221== by 0x497836B: setlocale (setlocale.c:337) ==100221== by 0x109056: main (first.c:157) ==100221== ==100221== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100221== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100221== by 0x48DC163: Curl_open (url.c:510) ==100221== by 0x487CCEF: curl_easy_init (easy.c:368) ==100221== by 0x1090B4: UnknownInlinedFun (lib566.c:40) ==100221== by 0x1090B4: main (first.c:178) ==100221== ==100221== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100221== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100221== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100221== by 0x4A58EC8: tsearch (tsearch.c:290) ==100221== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100221== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100221== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100221== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100221== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100221== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100221== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100221== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100221== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100221== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100221== by 0x497836B: setlocale (setlocale.c:337) ==100221== by 0x109056: main (first.c:157) ==100221== ==100221== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100221== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100221== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100221== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100221== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100221== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100221== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100221== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100221== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100221== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100221== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100221== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100221== by 0x497836B: setlocale (setlocale.c:337) ==100221== by 0x109056: main (first.c:157) ==100221== === End of file valgrind566 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/6/valgrind573 ./libtest/lib573 http://127.0.0.1:41583/573 > log/6/stdout573 2> log/6/stderr573 573: 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 573 === Start of file server.cmd Testnum 573 === End of file server.cmd === Start of file stderr573 URL: http://127.0.0.1:41583/573 === End of file stderr573 === Start of file valgrind573 ==100304== ==100304== Process terminating with default action of signal 4 (SIGILL) ==100304== Illegal opcode at address 0x48DC18B ==100304== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100304== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100304== by 0x48DC18B: Curl_open (url.c:519) ==100304== by 0x487CCEF: curl_easy_init (easy.c:368) ==100304== by 0x109306: test (lib573.c:55) ==100304== by 0x109076: main (first.c:178) ==100304== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100304== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100304== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100304== by 0x4A58EC8: tsearch (tsearch.c:290) ==100304== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100304== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100304== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100304== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100304== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100304== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100304== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100304== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100304== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100304== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100304== by 0x497836B: setlocale (setlocale.c:337) ==100304== by 0x109047: main (first.c:157) ==100304== ==100304== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100304== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100304== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100304== by 0x4A58EC8: tsearch (tsearch.c:290) ==100304== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100304== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100304== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100304== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100304== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100304== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100304== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100304== by 0x497836B: setlocale (setlocale.c:337) ==100304== by 0x109047: main (first.c:157) ==100304== ==100304== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100304== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100304== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100304== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100304== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100304== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100304== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100304== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100304== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100304== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100304== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100304== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100304== by 0x497836B: setlocale (setlocale.c:337) ==100304== by 0x109047: main (first.c:157) ==100304== ==100304== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100304== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100304== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100304== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100304== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100304== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100304== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100304== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100304== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100304== by 0x497836B: setlocale (setlocale.c:337) ==100304== by 0x109047: main (first.c:157) ==100304== ==100304== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100304== CMD (33792): ../libtool --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/valgrind574 ./libtest/lib574 ftp://127.0.0.1:42239/fully_simulated/UNIX/*.txt > log/2/stdout574 2> log/2/stderr574 at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100304== by 0x48DC163: Curl_open (url.c:510) ==100304== by 0x487CCEF: curl_easy_init (easy.c:368) ==100304== by 0x109306: test (lib573.c:55) ==100304== by 0x109076: main (first.c:178) ==100304== ==100304== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100304== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100304== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100304== by 0x4A58EC8: tsearch (tsearch.c:290) ==100304== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100304== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100304== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100304== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100304== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100304== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100304== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100304== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100304== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100304== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100304== by 0x497836B: setlocale (setlocale.c:337) ==100304== by 0x109047: main (first.c:157) ==100304== ==100304== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100304== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100304== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100304== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100304== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100304== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100304== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100304== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100304== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100304== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100304== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100304== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100304== by 0x497836B: setlocale (setlocale.c:337) ==100304== by 0x109047: main (first.c:157) ==100304== === End of file valgrind573 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/2/valgrind574 ./libtest/lib574 ftp://127.0.0.1:42239/fully_simulated/UNIX/*.txt > log/2/stdout574 2> log/2/stderr574 574: stdout FAILED: --- log/2/check-expected 2024-05-23 11:16:18.610358221 +0200 +++ log/2/check-generated 2024-05-23 11:16:18.610358221 +0200 @@ -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/2/ 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 server.cmd Testnum 574 === End of file server.cmd === Start of file stderr574 URL: ftp://127.0.0.1:42239/fully_simulated/UNIX/*.txt === End of file stderr574 === Start of file valgrind574 ==100331== ==100331== Process terminating with default action of signal 4 (SIGILL) ==100331== Illegal opcode at address 0x48DC18B ==100331== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100331== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100331== by 0x48DC18B: Curl_open (url.c:519) ==100331== by 0x487CCEF: curl_easy_init (easy.c:368) ==100331== by 0x10908A: UnknownInlinedFun (lib574.c:49) ==100331== by 0x10908A: main (first.c:178) ==100331== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100331== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100331== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100331== by 0x4A58EC8: tsearch (tsearch.c:290) ==100331== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100331== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100331== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100331== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100331== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100331== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100331== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100331== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100331== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100331== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100331== by 0x497836B: setlocale (setlocale.c:337) ==100331== by 0x109047: main (first.c:157) ==100331== ==100331== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100331== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100331== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100331== by 0x4A58EC8: tsearch (tsearch.c:290) ==100331== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100331== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100331== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100331== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100331== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100331== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100331== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100331== by 0x497836B: setlocale (setlocale.c:337) ==100331== by 0x109047: main (first.c:157) ==100331== ==100331== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100331== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100331== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100331== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100331== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100331== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100331== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100331== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100331== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100331== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100331== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100331== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100331== by 0x497836B: setlocale (setlocale.c:337) ==100331== by 0x109047: main (first.c:157) ==100331== ==100331== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100331== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100331== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100331== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100331== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100331== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100331== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100331== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100331== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100331== by 0x497836B: setlocale (setlocale.c:337) ==100331== by 0x109047: main (first.c:157) ==100331== ==100331== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100331== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100331== by 0x48DC163: Curl_open (url.c:510) ==100331== by 0x487CCEF: curl_easy_init (easy.c:368) ==100331== by 0x10908A: UnknownInlinedFun (lib574.c:49) ==100331== by 0x10908A: main (first.c:178) ==100331== ==100331== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100331== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100331== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100331== by 0x4A58EC8: tsearch (tsearch.c:290) ==100331== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100331== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100331== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100331== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100331== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100331== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100331== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100331== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100331== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100331== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100331== by 0x497836B: setlocale (setlocale.c:337) ==100331== by 0x109047: main (first.c:157) ==100331== ==100331== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100331== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100331== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100331== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100331== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100331== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100331== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100331== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100331== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100331== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100331== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100331== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100331== by 0x497836B: setlocale (setlocale.c:337) ==100331== by 0x109047: main (first.c:157) ==100331== === End of fiCMD (0): ../src/curl --max-time 13 --output log/11/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:36537/verifiedserver" 2>log/11/rtsp_verify.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/4/valgrind575 ./libtest/lib575 ftp://127.0.0.1:36137/fully_simulated/UNIX/* > log/4/stdout575 2> log/4/stderr575 le valgrind574 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/4/valgrind575 ./libtest/lib575 ftp://127.0.0.1:36137/fully_simulated/UNIX/* > log/4/stdout575 2> log/4/stderr575 575: stdout FAILED: --- log/4/check-expected 2024-05-23 11:16:18.643692238 +0200 +++ log/4/check-generated 2024-05-23 11:16:18.643692238 +0200 @@ -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/4/ 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 server.cmd Testnum 575 === End of file server.cmd === Start of file stderr575 URL: ftp://127.0.0.1:36137/fully_simulated/UNIX/* === End of file stderr575 === Start of file valgrind575 ==100396== ==100396== Process terminating with default action of signal 4 (SIGILL) ==100396== Illegal opcode at address 0x48DC18B ==100396== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100396== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100396== by 0x48DC18B: Curl_open (url.c:519) ==100396== by 0x487CCEF: curl_easy_init (easy.c:368) ==100396== by 0x1092B9: test (lib575.c:52) ==100396== by 0x109076: main (first.c:178) ==100396== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100396== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100396== by 0x4A58EC8: tsearch (tsearch.c:290) ==100396== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100396== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100396== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100396== by 0x497836B: setlocale (setlocale.c:337) ==100396== by 0x109047: main (first.c:157) ==100396== ==100396== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100396== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100396== by 0x4A58EC8: tsearch (tsearch.c:290) ==100396== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100396== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100396== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100396== by 0x497836B: setlocale (setlocale.c:337) ==100396== by 0x109047: main (first.c:157) ==100396== ==100396== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100396== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100396== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100396== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100396== by 0x497836B: setlocale (setlocale.c:337) ==100396== by 0x109047: main (first.c:157) ==100396== ==100396== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100396== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100396== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100396== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100396== by 0x497836B: setlocale (setlocale.c:337) ==100396== by 0x109047: main (first.c:157) ==100396== ==100396== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100396== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100396== by 0x48DC163: Curl_open (url.c:510) ==100396== by 0x487CCEF: curl_easy_init (easy.c:368) ==100396== by 0x1092B9: test (lib575.c:52) ==100396== by 0x109076: main (first.c:178) ==100396== ==100396== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100396== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100396== by 0x4A58EC8: tsearch (tsearch.c:290) ==100396== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100396== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100396== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100396== by 0x497836B: setlocale (setlocale.c:337) ==100396== by 0x109047: main (first.c:157) ==100396== ==100396== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100396== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100396== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100396== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100396== by 0x49DCCMD (0): ../src/curl --max-time 13 --output log/8/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:35205/verifiedserver" 2>log/8/rtsp_verify.log CMD (0): ../src/curl --max-time 13 --output log/1/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:35395/verifiedserver" 2>log/1/rtsp_verify.log CMD (0): ../src/curl --max-time 13 --output log/12/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:40747/verifiedserver" 2>log/12/rtsp_verify.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/7/valgrind576 ./libtest/lib576 ftp://127.0.0.1:45903/fully_simulated/UNIX/* > log/7/stdout576 2> log/7/stderr576 34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100396== by 0x497836B: setlocale (setlocale.c:337) ==100396== by 0x109047: main (first.c:157) ==100396== === End of file valgrind575 test 0576...[FTP wildcard download - 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/7/valgrind576 ./libtest/lib576 ftp://127.0.0.1:45903/fully_simulated/UNIX/* > log/7/stdout576 2> log/7/stderr576 576: stdout FAILED: --- log/7/check-expected 2024-05-23 11:16:18.883697165 +0200 +++ log/7/check-generated 2024-05-23 11:16:18.883697165 +0200 @@ -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/7/ 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 server.cmd Testnum 576 === End of file server.cmd === Start of file stderr576 URL: ftp://127.0.0.1:45903/fully_simulated/UNIX/* === End of file stderr576 === Start of file valgrind576 ==100478== ==100478== Process terminating with default action of signal 4 (SIGILL) ==100478== Illegal opcode at address 0x48DC18B ==100478== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100478== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100478== by 0x48DC18B: Curl_open (url.c:519) ==100478== by 0x487CCEF: curl_easy_init (easy.c:368) ==100478== by 0x109098: UnknownInlinedFun (lib576.c:103) ==100478== by 0x109098: main (first.c:178) ==100478== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100478== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100478== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100478== by 0x4A58EC8: tsearch (tsearch.c:290) ==100478== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100478== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100478== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100478== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100478== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100478== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100478== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100478== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100478== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100478== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100478== by 0x497836B: setlocale (setlocale.c:337) ==100478== by 0x109054: main (first.c:157) ==100478== ==100478== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100478== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100478== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100478== by 0x4A58EC8: tsearch (tsearch.c:290) ==100478== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100478== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100478== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100478== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100478== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100478== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100478== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100478== by 0x497836B: setlocale (setlocale.c:337) ==100478== by 0x109054: main (first.c:157) ==100478== ==100478== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100478== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100478== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100478== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100478== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100478== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100478== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100478== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100478== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100478== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100478== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100478== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100478== by 0x497836B: setlocale (setlocale.c:337) ==100478== by 0x109054: main (first.c:157) ==100478== ==100478== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100478== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100478== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100478== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100478== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100478== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100478== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100478== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100478== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100478== by 0x497836B: setlocale (setlocale.c:337) ==100478== by 0x109054: main (first.c:157) ==100478== ==100478== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100478== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100478== by 0x48DC163: Curl_open (url.c:510) ==100478== by 0x487CCEF: curl_easy_init (easy.c:368) ==100478== by 0x109098: UnknownInlinedFun (lib576.c:103) ==100478==CMD (33792): ../libtool --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/valgrind564 ./libtest/lib564 ftp://127.0.0.1:35155/path/564 127.0.0.1:34049 > log/5/stdout564 2> log/5/stderr564 by 0x109098: main (first.c:178) ==100478== ==100478== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100478== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100478== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100478== by 0x4A58EC8: tsearch (tsearch.c:290) ==100478== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100478== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100478== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100478== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100478== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100478== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100478== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100478== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100478== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100478== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100478== by 0x497836B: setlocale (setlocale.c:337) ==100478== by 0x109054: main (first.c:157) ==100478== ==100478== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100478== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100478== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100478== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100478== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100478== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100478== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100478== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100478== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100478== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100478== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100478== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100478== by 0x497836B: setlocale (setlocale.c:337) ==100478== by 0x109054: main (first.c:157) ==100478== === End of file valgrind576 CMD (0): ../src/curl --max-time 13 --output log/9/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:45899/verifiedserver" 2>log/9/rtsp_verify.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/10/valgrind567 ./libtest/lib567 rtsp://127.0.0.1:33003/567 > log/10/stdout567 2> log/10/stderr567 startnew: server/socksd --port 0 --pidfile log/5/server/socks_server.pid --portfile log/5/server/socks_server.port --reqfile log/5/socksd-request.log --logfile log/5/socks_server.log --backend 127.0.0.1 --config log/5/server.cmd RUN: SOCKS server is now running PID 100121 * pid socks => 100121 100121 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/5/valgrind564 ./libtest/lib564 ftp://127.0.0.1:35155/path/564 127.0.0.1:34049 > log/5/stdout564 2> log/5/stderr564 564: stdout FAILED: --- log/5/check-expected 2024-05-23 11:16:18.900364172 +0200 +++ log/5/check-generated 2024-05-23 11:16:18.900364172 +0200 @@ -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/5/ 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 server.cmd Testnum 564 === End of file server.cmd === Start of file socks_server.log 11:16:17.634826 Running IPv4 version 11:16:17.634879 Listening on port 34049 11:16:17.634903 Wrote pid 100121 to log/5/server/socks_server.pid 11:16:17.634924 Wrote port 34049 to log/5/server/socks_server.port === End of file socks_server.log === Start of file stderr564 URL: ftp://127.0.0.1:35155/path/564 === End of file stderr564 === Start of file valgrind564 ==100444== ==100444== Process terminating with default action of signal 4 (SIGILL) ==100444== Illegal opcode at address 0x48DC18B ==100444== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100444== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100444== by 0x48DC18B: Curl_open (url.c:519) ==100444== by 0x487CCEF: curl_easy_init (easy.c:368) ==100444== by 0x109311: test.part.0 (lib564.c:45) ==100444== by 0x1090AF: UnknownInlinedFun (lib564.c:43) ==100444== by 0x1090AF: main (first.c:178) ==100444== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100444== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100444== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100444== by 0x4A58EC8: tsearch (tsearch.c:290) ==100444== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100444== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100444== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100444== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100444== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100444== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100444== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100444== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100444== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100444== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100444== by 0x497836B: setlocale (setlocale.c:337) ==100444== by 0x109047: main (first.c:157) ==100444== ==100444== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100444== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100444== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100444== by 0x4A58EC8: tsearch (tsearch.c:290) ==100444== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100444== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100444== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100444== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100444== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100444== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100444== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100444== by 0x497836B: setlocale (setlocale.c:337) ==100444== by 0x109047: main (first.c:157) ==100444== ==100444== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100444== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100444== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100444== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100444== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100444== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100444== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100444== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100444== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100444== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100444== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100444== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100444== by 0x497836B: setlocale (setlocale.c:337) ==100444== by 0x109047: main (first.c:157) ==100444== ==100444== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100444== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100444== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100444== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100444== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100444== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100444== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100444== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100444== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100444== by 0x497836B: setlocale (setlocale.c:337) ==100444== by 0x109047: main (first.c:157) ==100444== ==100444== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100444== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100444== by 0x48DC163: Curl_open (url.c:510) ==100444== by 0x487CCEF: curl_easy_init (easy.c:368) ==100444== by 0x109311: test.part.0 (lib564.c:45) ==100444== by 0x1090AF: UnknownInlinedFun (lib564.c:43) ==100444== by 0x1090AF: main (first.c:178) ==100444== ==100444== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100444== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100444== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100444== by 0x4A58EC8: tsearch (tsearch.c:290) ==100444== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100444== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100444== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100444== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100444== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100444== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100444== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100444== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100444== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100444== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100444== by 0x497836B: setlocale (setlocale.c:337) ==100444== by 0x109047: main (first.c:157) ==100444== ==100444== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100444== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100444== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100444== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100444== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100444== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100444== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100444== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100444== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100444== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100444== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100444== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100444== by 0x497836B: setlocale (setlocale.c:337) ==100444== by 0x109047: main (first.c:157) ==100444== === End of file valgrind564 startnew: perl -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: ../src/curl --max-time 13 --output log/10/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:33003/verifiedserver" 2>log/10/rtsp_verify.log RUN: RTSP server PID 100175 port 33003 * pid rtsp => 100175 100175 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/lib567 rtsp://127.0.0.1:33003/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 rtsp_server.log 11:16:17.838378 Running IPv4 version on port 33003 11:16:17.838468 Wrote pid 100175 to log/10/server/rtsp_server.pid 11:16:17.838492 Wrote port 33003 to log/10/server/rtsp_server.port 11:16:18.838096 ====> Client connect 11:16:18.838113 Read 92 bytes 11:16:18.838120 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:33003 User-Agent: curl/8.8.0 Accept: */* ] 11:16:18.838133 Got request: GET /verifiedserver HTTP/1.1 11:16:18.838139 Are-we-friendly question received 11:16:18.838153 Wrote request (92 bytes) input to log/10/server.input 11:16:18.838178 Send response number -2 part 0 11:16:18.838184 Identifying ourselves as friends 11:16:18.838207 Sent off 69 bytes 11:16:18.838217 Response sent (69 bytes) and written to log/10/server.response 11:16:18.838222 special request received, no persistency 11:16:18.838227 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:33003... * Connected to 127.0.0.1 (127.0.0.1) port 33003 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33003 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100175 === End of file rtsp_verify.out === Start of file server.cmd Testnum 567 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100175 === End of file server.response === Start of file stderr567 URL: rtsp://127.0.0.1:33003/567 === End of file stderr567 === Start of file valgrind567 ==100556== ==100556== Process terminating with default action of signal 4 (SIGILL) ==100556== Illegal opcode at address 0x48DC18B ==100556== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100556== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100556== by 0x48DC18B: Curl_open (url.c:519) ==100556== by 0x487CCEF: curl_easy_init (easy.c:368) ==100556== by 0x10908E: UnknownInlinedFun (lib567.c:42) ==100556== by 0x10908E: main (first.c:178) ==100556== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100556== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100556== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100556== by 0x4A58EC8: tsearch (tsearch.c:290) ==100556== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100556== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100556== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100556== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100556== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100556== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100556== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100556== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100556== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100556== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100556== by 0x497836B: setlocale (setlocale.c:337) ==100556== by 0x10904B: main (first.c:157) ==100556== ==100556== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100556== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100556== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100556== by 0x4A58EC8: tsearch (tsearch.c:290) ==100556== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100556== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100556== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100556== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100556== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100556== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100556== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100556== by 0x497836B: setlocale (setlocale.c:337) ==100556== by 0x10904B: main (first.c:157) ==100556== ==100556== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100556== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100556== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100556== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100556== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100556== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100556== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100556== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100556== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100556== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100556== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100556== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100556== by 0x497836B: setlocale (setlocale.c:337) ==100556== by 0x10904B: main (first.c:157) ==100556== ==100556== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100556== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100556== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100556== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100556== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100556== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100556== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100556== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100556== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100556== by 0x497836B: setlocale (setlocale.c:337) ==100556== by 0x10904B: main (first.c:157) ==100556== ==100556== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100556== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100556== by 0x48DC163: Curl_open (url.c:510) ==100556== by 0x487CCEF: curl_easy_init (easy.c:368) ==100556== by 0x10908E: UnknownInlinedFun (lib567.c:42) ==100556== by 0x10908E: main (first.c:178) ==100556== ==100556== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100556== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100556== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100556== by 0x4A58EC8: tsearch (tsearch.c:290) ==100556== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100556== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100556== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100556== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100556== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100556== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100556== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100556== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100556== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100556== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100556== by 0x497836B: setlocale (setlocale.c:337) ==100556== by 0x10904B: main (firstCMD (0): ../src/curl --max-time 13 --output log/3/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:34687/verifiedserver" 2>log/3/rtsp_verify.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/valgrind578 ./libtest/lib578 http://127.0.0.1:41583/578 log/6/ip578 > log/6/stdout578 2> log/6/stderr578 .c:157) ==100556== ==100556== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100556== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100556== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100556== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100556== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100556== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100556== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100556== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100556== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100556== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100556== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100556== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100556== by 0x497836B: setlocale (setlocale.c:337) ==100556== by 0x10904B: main (first.c:157) ==100556== === End of file valgrind567 CMD (33792): ../libtool --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/valgrind579 ./libtest/lib579 http://127.0.0.1:44205/579 log/2/ip579 > log/2/stdout579 2> log/2/stderr579 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/6/valgrind578 ./libtest/lib578 http://127.0.0.1:41583/578 log/6/ip578 > log/6/stdout578 2> log/6/stderr578 578: data FAILED: --- log/6/check-expected 2024-05-23 11:16:19.463709071 +0200 +++ log/6/check-generated 2024-05-23 11:16:19.460375669 +0200 @@ -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/6/ 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 server.cmd Testnum 578 === End of file server.cmd === Start of file stderr578 URL: http://127.0.0.1:41583/578 === End of file stderr578 === Start of file valgrind578 ==100612== ==100612== Process terminating with default action of signal 4 (SIGILL) ==100612== Illegal opcode at address 0x48DC18B ==100612== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100612== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100612== by 0x48DC18B: Curl_open (url.c:519) ==100612== by 0x487CCEF: curl_easy_init (easy.c:368) ==100612== by 0x10909A: UnknownInlinedFun (lib578.c:63) ==100612== by 0x10909A: main (first.c:178) ==100612== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100612== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100612== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100612== by 0x4A58EC8: tsearch (tsearch.c:290) ==100612== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100612== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100612== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100612== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100612== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100612== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100612== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100612== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100612== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100612== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100612== by 0x497836B: setlocale (setlocale.c:337) ==100612== by 0x109047: main (first.c:157) ==100612== ==100612== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100612== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100612== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100612== by 0x4A58EC8: tsearch (tsearch.c:290) ==100612== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100612== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100612== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100612== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100612== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100612== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100612== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100612== by 0x497836B: setlocale (setlocale.c:337) ==100612== by 0x109047: main (first.c:157) ==100612== ==100612== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100612== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100612== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100612== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100612== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100612== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100612== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100612== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100612== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100612== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100612== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100612== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100612== by 0x497836B: setlocale (setlocale.c:337) ==100612== by 0x109047: main (first.c:157) ==100612== ==100612== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100612== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100612== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100612== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100612== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100612== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100612== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100612== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100612== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100612== by 0x497836B: setlocale (setlocale.c:337) ==100612== by 0x109047: main (first.c:157) ==100612== ==100612== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100612== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100612== by 0x48DC163: Curl_open (url.c:510) ==100612== by 0x487CCEF: curl_easy_init (easy.c:368) ==100612== by 0x10909A: UnknownInlinedFun (lib578.c:63) ==100612== by 0x10909A: main (first.c:178) ==100612== ==100612== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100612== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100612== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100612== by 0x4A58EC8: tsearch (tsearch.c:290) ==100612== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100612== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100612== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100612== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100612== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100612== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100612== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100612== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100612== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100612== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100612== by 0x497836B: setlocale (setlocale.c:337) ==100612== by 0x109047: main (first.c:157) ==100612== ==100612== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100612== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100612== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100612== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100612== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100612== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100612== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100612== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100612== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100612== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100612== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100612== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100612== by 0x497836B: setlocale (setlocale.c:337) ==100612== by 0x109047: main (first.c:157) ==100612== === End of file valgrind578 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/2/valgrind579 ./libtest/lib579 http://127.0.0.1:44205/579 log/2/ip579 > log/2/stdout579 2> log/2/stderr579 579: data FAILED: --- log/2/check-expected 2024-05-23 11:16:19.470375874 +0200 +++ log/2/check-generated 2024-05-23 11:16:19.470375874 +0200 @@ -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/2/ 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 server.cmd Testnum 579 === End of file server.cmd === Start of file stderr579 URL: http://127.0.0.1:44205/579 === End of file stderr579 === Start of file valgrind579 ==100659== ==100659== Process terminating with default action of signal 4 (SIGILL) ==100659== Illegal opcode at address 0x48DC18B ==100659== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100659== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100659== by 0x48DC18B: Curl_open (url.c:519) ==100659== by 0x487CCEF: curl_easy_init (easy.c:368) ==100659== by 0x1090B2: UnknownInlinedFun (lib579.c:101) ==100659== by 0x1090B2: main (first.c:178) ==100659== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100659== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100659== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100659== by 0x4A58EC8: tsearch (tsearch.c:290) ==100659== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100659== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100659== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100659== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100659== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100659== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100659== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100659== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100659== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100659== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100659== by 0x497836B: setlocale (setlocale.c:337) ==100659== by 0x109056: main (first.c:157) ==100659== ==100659== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100659== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100659== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100659== by 0x4A58EC8: tsearch (tsearch.c:290) ==100659== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100659== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100659== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100659== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100659== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100659== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100659== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100659== by 0x497836B: setlocale (setlocale.c:337) ==100659== by 0x109056: main (first.c:157) ==100659== ==100659== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100659== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100659== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100659== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100659== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100659== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100659== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100659== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100659== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100659== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100659== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100659== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100659== by 0x497836B: setlocale (setlocale.c:337) ==100659== by 0x109056: main (first.c:157) ==100659== ==100659== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100659== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100659== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100659== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100659== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100659== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100659== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100659== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100659== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100659== by 0x497836B: setlocale (setlocale.c:337) ==100659== by 0x109056: main (first.c:157) ==100659== ==100659== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100659== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100659== by 0x48DC163: Curl_open (url.c:510) ==100659== by 0x487CCEF: curl_easy_init (easy.c:368) ==100659== by 0x1090B2: UnknownInlinedFun (lib579.c:101) ==100659== by 0x1090B2: main (first.c:178) ==100659== ==100659== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100659== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100659== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100659== by 0x4A58EC8: tsearch (tsearch.c:290) ==100659== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100659== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100659== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100659== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100659== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100659== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100659== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100659== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100659== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100659== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100659== by 0x497836B: setlocale (setlocale.c:337) ==100659== by 0x109056: main (first.c:157) ==100659== ==100659== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100659== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100659== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100659== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100659== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100659== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100659== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100659== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100659== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100659== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100659== by 0x496B88C: __gconv_compare_alias (gconv_dbCMD (33792): ../libtool --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/valgrind580 ./libtest/lib507 http://127.0.0.1:41947/580 > log/4/stdout580 2> log/4/stderr580 CMD (33792): ../libtool --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/valgrind568 ./libtest/lib568 rtsp://127.0.0.1:36537/568 log/11/file568.txt > log/11/stdout568 2> log/11/stderr568 .c:692) ==100659== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100659== by 0x497836B: setlocale (setlocale.c:337) ==100659== by 0x109056: main (first.c:157) ==100659== === End of file valgrind579 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/4/valgrind580 ./libtest/lib507 http://127.0.0.1:41947/580 > log/4/stdout580 2> log/4/stderr580 580: 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 580 === Start of file server.cmd Testnum 580 === End of file server.cmd === Start of file stderr580 URL: http://127.0.0.1:41947/580 === End of file stderr580 === Start of file valgrind580 ==100746== ==100746== Process terminating with default action of signal 4 (SIGILL) ==100746== Illegal opcode at address 0x48DC18B ==100746== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100746== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100746== by 0x48DC18B: Curl_open (url.c:519) ==100746== by 0x487CCEF: curl_easy_init (easy.c:368) ==100746== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==100746== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==100746== by 0x1092F1: test.part.0 (lib507.c:45) ==100746== by 0x10909E: UnknownInlinedFun (lib507.c:43) ==100746== by 0x10909E: main (first.c:178) ==100746== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==100746== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100746== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100746== by 0x4A58EC8: tsearch (tsearch.c:290) ==100746== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100746== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100746== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100746== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100746== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100746== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100746== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100746== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100746== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100746== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100746== by 0x497836B: setlocale (setlocale.c:337) ==100746== by 0x109047: main (first.c:157) ==100746== ==100746== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==100746== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100746== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100746== by 0x4A58EC8: tsearch (tsearch.c:290) ==100746== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100746== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100746== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100746== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100746== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100746== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100746== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100746== by 0x497836B: setlocale (setlocale.c:337) ==100746== by 0x109047: main (first.c:157) ==100746== ==100746== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==100746== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100746== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100746== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100746== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100746== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100746== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100746== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100746== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100746== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100746== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100746== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100746== by 0x497836B: setlocale (setlocale.c:337) ==100746== by 0x109047: main (first.c:157) ==100746== ==100746== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==100746== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100746== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100746== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100746== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100746== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100746== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100746== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100746== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100746== by 0x497836B: setlocale (setlocale.c:337) ==100746== by 0x109047: main (first.c:157) ==100746== ==100746== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==100746== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100746== by 0x48DC163: Curl_open (url.c:510) ==100746== by 0x487CCEF: curl_easy_init (easy.c:368) ==100746== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==100746== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==100746== by 0x1092F1: test.part.0 (lib507.c:45) ==100746== by 0x10909E: UnknownInlinedFun (lib507.c:43) ==100746== by 0x10909E: main (first.c:178) ==100746== ==100746== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==100746== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100746== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100746== by 0x4A58EC8: tsearch (tsearch.c:290) ==100746== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100746== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100746== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100746== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100746== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100746== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100746== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100746== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100746== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100746== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100746== by 0x497836B: setlocale (setlocale.c:337) ==100746== by 0x109047: main (first.c:157) ==100746== ==100746== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==100746== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100746== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100746== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100746== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100746== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100746== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100746== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100746== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100746== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100746== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100746== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100746== by 0x497836B: setlocale (setlocale.c:337) ==100746== by 0x109047: main (first.c:157) ==100746== === End of file valgrind580 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/11/server/rtsp_server.pid" --portfile "log/11/server/rtsp_server.port" --logfile "log/11/rtsp_server.log" --logdir "log/11" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/11/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:36537/verifiedserver" 2>log/11/rtsp_verify.log RUN: RTSP server PID 100285 port 36537 * pid rtsp => 100285 100285 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/11/valgrind568 ./libtest/lib568 rtsp://127.0.0.1:36537/568 log/11/file568.txt > log/11/stdout568 2> log/11/stderr568 568: 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 568 === 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 11:16:17.159278 Running IPv4 version on port 36537 11:16:17.159368 Wrote pid 100285 to log/11/server/rtsp_server.pid 11:16:17.159399 Wrote port 36537 to log/11/server/rtsp_server.port 11:16:18.162790 ====> Client connect 11:16:18.162814 Read 92 bytes 11:16:18.162822 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:36537 User-Agent: curl/8.8.0 Accept: */* ] 11:16:18.162839 Got request: GET /verifiedserver HTTP/1.1 11:16:18.162845 Are-we-friendly question received 11:16:18.162864 Wrote request (92 bytes) input to log/11/server.input 11:16:18.162885 Send response number -2 part 0 11:16:18.162893 Identifying ourselves as friends 11:16:18.162934 Sent off 69 bytes 11:16:18.162948 Response sent (69 bytes) and written to log/11/server.response 11:16:18.162955 special request received, no persistency 11:16:18.162962 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:36537... * Connected to 127.0.0.1 (127.0.0.1) port 36537 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36537 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100285 === End of file rtsp_verify.out === Start of file server.cmd Testnum 568 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100285 === End of file server.response === Start of file stderr568 URL: rtsp://127.0.0.1:36537/568 === End of file stderr568 === Start of file valgrind568 ==100723== ==100723== Process terminating with default action of signal 4 (SIGILL) ==100723== Illegal opcode at address 0x48DC18B ==100723== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100723== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100723== by 0x48DC18B: Curl_open (url.c:519) ==100723== by 0x487CCEF: curl_easy_init (easy.c:368) ==100723== by 0x1090AE: UnknownInlinedFun (lib568.c:60) ==100723== by 0x1090AE: main (first.c:178) ==100723== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100723== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100723== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100723== by 0x4A58EC8: tsearch (tsearch.c:290) ==100723== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100723== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100723== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100723== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100723== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100723== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100723== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100723== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100723== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100723== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100723== by 0x497836B: setlocale (setlocale.c:337) ==100723== by 0x10905B: main (first.c:157) ==100723== ==100723== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100723== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100723== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100723== by 0x4A58EC8: tsearch (tsearch.c:290) ==100723== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100723== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100723== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100723== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100723== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100723== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100723== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100723== by 0x497836B: setlocale (setlocale.c:337) ==100723== by 0x10905B: main (first.c:157) ==100723== ==100723== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100723== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100723== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100723== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100723== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100723== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100723== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100723== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100723== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100723== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100723== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100723== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100723== by 0x497836B: setlocale (setlocale.c:337) ==100723== by 0x10905B: main (first.c:157) ==100723== ==100723== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==100723== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100723== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100723== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100723== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100723== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100723== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100723== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100723== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100723== by 0x497836B: setlocale (setlocale.c:337) ==100723== by 0x10905B: main (first.c:157) ==100723== ==100723== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100723== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100723== by 0x48DC163: Curl_open (url.c:510) ==100723== by 0x487CCEF: curl_easy_init (easy.c:368) ==100723== by 0x1090AE: UnknownInlinedFun (lib568.c:60) ==100723== by 0x1090AE: main (first.c:178) ==100723== ==100723== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100723== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100723== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100723== by 0x4A58EC8: tsearch (tsearch.c:290) ==100723== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100723== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100723== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100723== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100723== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100723== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100723== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100723== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100723== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100723== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100723== by 0x497836B: setlocale (setlocale.c:337) ==100723== by 0x10905B: main (first.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/valgrind569 ./libtest/lib569 rtsp://127.0.0.1:35205/569 log/8/idfile569.txt > log/8/stdout569 2> log/8/stderr569 CMD (33792): ../libtool --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/valgrind570 ./libtest/lib570 rtsp://127.0.0.1:35395/570 > log/1/stdout570 2> log/1/stderr570 157) ==100723== ==100723== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100723== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100723== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100723== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100723== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100723== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100723== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100723== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100723== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100723== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100723== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100723== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100723== by 0x497836B: setlocale (setlocale.c:337) ==100723== by 0x10905B: main (first.c:157) ==100723== === End of file valgrind568 startnew: perl -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: ../src/curl --max-time 13 --output log/8/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:35205/verifiedserver" 2>log/8/rtsp_verify.log RUN: RTSP server PID 100289 port 35205 * pid rtsp => 100289 100289 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/8/valgrind569 ./libtest/lib569 rtsp://127.0.0.1:35205/569 log/8/idfile569.txt > log/8/stdout569 2> log/8/stderr569 569: 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 569 === Start of file rtsp_server.log 11:16:17.248134 Running IPv4 version on port 35205 11:16:17.256122 Wrote pid 100289 to log/8/server/rtsp_server.pid 11:16:17.256148 Wrote port 35205 to log/8/server/rtsp_server.port 11:16:18.254844 ====> Client connect 11:16:18.254868 Read 92 bytes 11:16:18.254876 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:35205 User-Agent: curl/8.8.0 Accept: */* ] 11:16:18.254895 Got request: GET /verifiedserver HTTP/1.1 11:16:18.254902 Are-we-friendly question received 11:16:18.254921 Wrote request (92 bytes) input to log/8/server.input 11:16:18.254939 Send response number -2 part 0 11:16:18.254946 Identifying ourselves as friends 11:16:18.254989 Sent off 69 bytes 11:16:18.255004 Response sent (69 bytes) and written to log/8/server.response 11:16:18.255011 special request received, no persistency 11:16:18.255017 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:35205... * Connected to 127.0.0.1 (127.0.0.1) port 35205 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35205 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100289 === End of file rtsp_verify.out === Start of file server.cmd Testnum 569 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100289 === End of file server.response === Start of file stderr569 URL: rtsp://127.0.0.1:35205/569 === End of file stderr569 === Start of file valgrind569 ==100863== ==100863== Process terminating with default action of signal 4 (SIGILL) ==100863== Illegal opcode at address 0x48DC18B ==100863== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100863== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100863== by 0x48DC18B: Curl_open (url.c:519) ==100863== by 0x487CCEF: curl_easy_init (easy.c:368) ==100863== by 0x1090CC: UnknownInlinedFun (lib569.c:57) ==100863== by 0x1090CC: main (first.c:178) ==100863== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==100863== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100863== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100863== by 0x4A58EC8: tsearch (tsearch.c:290) ==100863== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100863== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100863== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100863== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100863== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100863== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100863== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100863== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100863== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100863== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100863== by 0x497836B: setlocale (setlocale.c:337) ==100863== by 0x109058: main (first.c:157) ==100863== ==100863== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==100863== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100863== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100863== by 0x4A58EC8: tsearch (tsearch.c:290) ==100863== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100863== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100863== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100863== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100863== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100863== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100863== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100863== by 0x497836B: setlocale (setlocale.c:337) ==100863== by 0x109058: main (first.c:157) ==100863== ==100863== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==100863== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100863== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100863== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100863== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100863== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100863== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100863== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100863== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100863== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100863== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100863== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100863== by 0x497836B: setlocale (setlocale.c:337) ==100863== by 0x109058: main (first.c:157) ==100863== ==100863== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==100863== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100863== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100863== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100863== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100863== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100863== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100863== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100863== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100863== by 0x497836B: setlocale (setlocale.c:337) ==100863== by 0x109058: main (first.c:157) ==100863== ==100863== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==100863== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100863== by 0x48DC163: Curl_open (url.c:510) ==100863== by 0x487CCEF: curl_easy_init (easy.c:368) ==100863== by 0x1090CC: UnknownInlinedFun (lib569.c:57) ==100863== by 0x1090CC: main (first.c:178) ==100863== ==100863== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==100863== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100863== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100863== by 0x4A58EC8: tsearch (tsearch.c:290) ==100863== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100863== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100863== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100863== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100863== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100863== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100863== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100863== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100863== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100863== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100863== by 0x497836B: setlocale (setlocale.c:337) ==100863== by 0x109058: main (first.c:157) ==100863== ==100863== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==100863== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100863== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100863== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100863== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100863== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100863== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100863== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100863== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100863== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100863== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100863== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100863== by 0x497836B: setlocale (setlocale.c:337) ==100863== by 0x109058: main (first.c:157) ==100863== === End of file valgrind569 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/1/server/rtsp_server.pid" --portfile "log/1/server/rtsp_server.port" --logfile "log/1/rtsp_server.log" --logdir "log/1" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/1/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:35395/verifiedserver" 2>log/1/rtsp_verify.log RUN: RTSP server PID 100291 port 35395 * pid rtsp => 100291 100291 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/1/valgrind570 ./libtest/lib570 rtsp://127.0.0.1:35395/570 > log/1/stdout570 2> log/1/stderr570 570: 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 570 === Start of file rtsp_server.log 11:16:17.273481 Running IPv4 version on port 35395 11:16:17.273557 Wrote pid 100291 to log/1/server/rtsp_server.pid 11:16:17.273581 Wrote port 35395 to log/1/server/rtsp_server.port 11:16:18.277411 ====> Client connect 11:16:18.277433 Read 92 bytes 11:16:18.277444 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:35395 User-Agent: curl/8.8.0 Accept: */* ] 11:16:18.277459 Got request: GET /verifiedserver HTTP/1.1 11:16:18.277465 Are-we-friendly question received 11:16:18.277484 Wrote request (92 bytes) input to log/1/server.input 11:16:18.277501 Send response number -2 part 0 11:16:18.277508 Identifying ourselves as friends 11:16:18.277542 Sent off 69 bytes 11:16:18.277557 Response sent (69 bytes) and written to log/1/server.response 11:16:18.277564 special request received, no persistency 11:16:18.277571 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:35395... * Connected to 127.0.0.1 (127.0.0.1) port 35395 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35395 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100291 === End of file rtsp_verify.out === Start of file server.cmd Testnum 570 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100291 === End of file server.response === Start of file stderr570 URL: rtsp://127.0.0.1:35395/570 === End of file stderr570 === Start of file valgrind570 ==100894== ==100894== Process terminating with default action of signal 4 (SIGILL) ==100894== Illegal opcode at address 0x48DC18B ==100894== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100894== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100894== by 0x48DC18B: Curl_open (url.c:519) ==100894== by 0x487CCEF: curl_easy_init (easy.c:368) ==100894== by 0x10908E: UnknownInlinedFun (lib570.c:45) ==100894== by 0x10908E: main (first.c:178) ==100894== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==100894== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100894== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100894== by 0x4A58EC8: tsearch (tsearch.c:290) ==100894== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100894== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100894== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100894== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100894== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100894== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100894== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100894== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100894== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100894== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100894== by 0x497836B: setlocale (setlocale.c:337) ==100894== by 0x10904B: main (first.c:157) ==100894== ==100894== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==100894== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100894== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100894== by 0x4A58EC8: tsearch (tsearch.c:290) ==100894== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100894== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100894== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100894== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100894== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100894== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100894== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100894== by 0x497836B: setlocale (setlocale.c:337) ==100894== by 0x10904B: main (first.c:157) ==100894== ==100894== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==100894== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100894== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100894== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100894== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100894== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100894== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100894== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100894== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100894== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100894== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100894== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100894== by 0x497836B: setlocale (setlocale.c:337) ==100894== by 0x10904B: main (first.c:157) ==100894== ==100894== 1,018 bytes in 23 blocks are possibly lost in lossCMD (33792): ../libtool --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/valgrind571 ./libtest/lib571 rtsp://127.0.0.1:40747/571 log/12/protofile571.txt > log/12/stdout571 2> log/12/stderr571 record 625 of 650 ==100894== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100894== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100894== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100894== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100894== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100894== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100894== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100894== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100894== by 0x497836B: setlocale (setlocale.c:337) ==100894== by 0x10904B: main (first.c:157) ==100894== ==100894== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==100894== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100894== by 0x48DC163: Curl_open (url.c:510) ==100894== by 0x487CCEF: curl_easy_init (easy.c:368) ==100894== by 0x10908E: UnknownInlinedFun (lib570.c:45) ==100894== by 0x10908E: main (first.c:178) ==100894== ==100894== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==100894== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100894== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100894== by 0x4A58EC8: tsearch (tsearch.c:290) ==100894== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100894== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100894== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100894== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100894== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100894== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100894== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100894== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100894== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100894== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100894== by 0x497836B: setlocale (setlocale.c:337) ==100894== by 0x10904B: main (first.c:157) ==100894== ==100894== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==100894== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100894== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100894== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100894== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100894== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100894== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100894== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100894== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100894== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100894== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100894== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100894== by 0x497836B: setlocale (setlocale.c:337) ==100894== by 0x10904B: main (first.c:157) ==100894== === End of file valgrind570 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/12/server/rtsp_server.pid" --portfile "log/12/server/rtsp_server.port" --logfile "log/12/rtsp_server.log" --logdir "log/12" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/12/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:40747/verifiedserver" 2>log/12/rtsp_verify.log RUN: RTSP server PID 100292 port 40747 * pid rtsp => 100292 100292 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/12/valgrind571 ./libtest/lib571 rtsp://127.0.0.1:40747/571 log/12/protofile571.txt > log/12/stdout571 2> log/12/stderr571 571: stdout FAILED: --- log/12/check-expected 2024-05-23 11:16:19.707047401 +0200 +++ log/12/check-generated 2024-05-23 11:16:19.707047401 +0200 @@ -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/12/ 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 rtsp_server.log 11:16:17.271796 Running IPv4 version on port 40747 11:16:17.271884 Wrote pid 100292 to log/12/server/rtsp_server.pid 11:16:17.271903 Wrote port 40747 to log/12/server/rtsp_server.port 11:16:18.277411 ====> Client connect 11:16:18.277433 Read 92 bytes 11:16:18.277441 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:40747 User-Agent: curl/8.8.0 Accept: */* ] 11:16:18.277459 Got request: GET /verifiedserver HTTP/1.1 11:16:18.277465 Are-we-friendly question received 11:16:18.277482 Wrote request (92 bytes) input to log/12/server.input 11:16:18.277498 Send response number -2 part 0 11:16:18.277504 Identifying ourselves as friends 11:16:18.277534 Sent off 69 bytes 11:16:18.277546 Response sent (69 bytes) and written to log/12/server.response 11:16:18.277552 special request received, no persistency 11:16:18.277558 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:40747... * Connected to 127.0.0.1 (127.0.0.1) port 40747 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40747 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100292 === End of file rtsp_verify.out === 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 server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100292 === End of file server.response === Start of file stderr571 URL: rtsp://127.0.0.1:40747/571 === End of file stderr571 === Start of file valgrind571 ==100912== ==100912== Process terminating with default action of signal 4 (SIGILL) ==100912== Illegal opcode at address 0x48DC18B ==100912== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==100912== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==100912== by 0x48DC18B: Curl_open (url.c:519) ==100912== by 0x487CCEF: curl_easy_init (easy.c:368) ==100912== by 0x1090C0: UnknownInlinedFun (lib571.c:122) ==100912== by 0x1090C0: main (first.c:178) ==100912== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==100912== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100912== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100912== by 0x4A58EC8: tsearch (tsearch.c:290) ==100912== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100912== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100912== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100912== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100912== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100912== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100912== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100912== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100912== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100912== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100912== by 0x497836B: setlocale (setlocale.c:337) ==100912== by 0x10904B: main (first.c:157) ==100912== ==100912== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==100912== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100912== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100912== by 0x4A58EC8: tsearch (tsearch.c:290) ==100912== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100912== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100912== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100912== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100912== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100912== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100912== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100912== by 0x497836B: setlocale (setlocale.c:337) ==100912== by 0x10904B: main (first.c:157) ==100912== ==100912== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==100912== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100912== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100912== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100912== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100912== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100912== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==100912== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==100912== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100912== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100912== by 0x496B88C: __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/7/valgrind581 ./libtest/lib507 http://127.0.0.1:35853/581 > log/7/stdout581 2> log/7/stderr581 c:692) ==100912== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100912== by 0x497836B: setlocale (setlocale.c:337) ==100912== by 0x10904B: main (first.c:157) ==100912== ==100912== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==100912== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100912== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100912== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==100912== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==100912== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100912== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100912== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100912== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100912== by 0x497836B: setlocale (setlocale.c:337) ==100912== by 0x10904B: main (first.c:157) ==100912== ==100912== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==100912== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==100912== by 0x48DC163: Curl_open (url.c:510) ==100912== by 0x487CCEF: curl_easy_init (easy.c:368) ==100912== by 0x1090C0: UnknownInlinedFun (lib571.c:122) ==100912== by 0x1090C0: main (first.c:178) ==100912== ==100912== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==100912== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100912== by 0x4A58EC8: __tsearch (tsearch.c:337) ==100912== by 0x4A58EC8: tsearch (tsearch.c:290) ==100912== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==100912== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100912== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100912== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100912== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100912== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100912== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100912== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100912== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100912== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100912== by 0x497836B: setlocale (setlocale.c:337) ==100912== by 0x10904B: main (first.c:157) ==100912== ==100912== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==100912== at 0x4842788: malloc (vg_replace_malloc.c:446) ==100912== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==100912== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==100912== by 0x496C9A2: add_alias (gconv_conf.c:178) ==100912== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==100912== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==100912== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==100912== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==100912== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==100912== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==100912== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==100912== by 0x497836B: setlocale (setlocale.c:337) ==100912== by 0x10904B: main (first.c:157) ==100912== === End of file valgrind571 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/7/valgrind581 ./libtest/lib507 http://127.0.0.1:35853/581 > log/7/stdout581 2> log/7/stderr581 581: 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 581 === Start of file server.cmd Testnum 581 === End of file server.cmd === Start of file stderr581 URL: http://127.0.0.1:35853/581 === End of file stderr581 === Start of file valgrind581 ==101030== ==101030== Process terminating with default action of signal 4 (SIGILL) ==101030== Illegal opcode at address 0x48DC18B ==101030== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101030== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101030== by 0x48DC18B: Curl_open (url.c:519) ==101030== by 0x487CCEF: curl_easy_init (easy.c:368) ==101030== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==101030== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==101030== by 0x1092F1: test.part.0 (lib507.c:45) ==101030== by 0x10909E: UnknownInlinedFun (lib507.c:43) ==101030== by 0x10909E: main (first.c:178) ==101030== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==101030== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101030== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101030== by 0x4A58EC8: tsearch (tsearch.c:290) ==101030== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101030== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101030== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101030== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101030== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101030== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101030== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101030== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101030== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101030== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101030== by 0x497836B: setlocale (setlocale.c:337) ==101030== by 0x109047: main (first.c:157) ==101030== ==101030== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==101030== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101030== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101030== by 0x4A58EC8: tsearch (tsearch.c:290) ==101030== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101030== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101030== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101030== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101030== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101030== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101030== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101030== by 0x497836B: setlocale (setlocale.c:337) ==101030== by 0x109047: main (first.c:157) ==101030== ==101030== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==101030== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101030== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101030== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101030== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101030== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101030== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101030== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101030== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101030== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101030== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101030== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101030== by 0x497836B: setlocale (setlocale.c:337) ==101030== by 0x109047: main (first.c:157) ==101030== ==101030== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==101030== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101030== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101030== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101030== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101030== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101030== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101030== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101030== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101030== by 0x497836B: setlocale (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/9/valgrind572 ./libtest/lib572 rtsp://127.0.0.1:45899/572 log/9/file572.txt > log/9/stdout572 2> log/9/stderr572 tlocale.c:337) ==101030== by 0x109047: main (first.c:157) ==101030== ==101030== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==101030== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101030== by 0x48DC163: Curl_open (url.c:510) ==101030== by 0x487CCEF: curl_easy_init (easy.c:368) ==101030== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==101030== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==101030== by 0x1092F1: test.part.0 (lib507.c:45) ==101030== by 0x10909E: UnknownInlinedFun (lib507.c:43) ==101030== by 0x10909E: main (first.c:178) ==101030== ==101030== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==101030== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101030== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101030== by 0x4A58EC8: tsearch (tsearch.c:290) ==101030== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101030== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101030== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101030== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101030== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101030== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101030== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101030== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101030== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101030== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101030== by 0x497836B: setlocale (setlocale.c:337) ==101030== by 0x109047: main (first.c:157) ==101030== ==101030== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==101030== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101030== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101030== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101030== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101030== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101030== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101030== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101030== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101030== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101030== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101030== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101030== by 0x497836B: setlocale (setlocale.c:337) ==101030== by 0x109047: main (first.c:157) ==101030== === End of file valgrind581 startnew: perl -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: ../src/curl --max-time 13 --output log/9/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:45899/verifiedserver" 2>log/9/rtsp_verify.log RUN: RTSP server PID 100300 port 45899 * pid rtsp => 100300 100300 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/9/valgrind572 ./libtest/lib572 rtsp://127.0.0.1:45899/572 log/9/file572.txt > log/9/stdout572 2> log/9/stderr572 572: 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 572 === Start of file file572.txt scale speed === End of file file572.txt === Start of file rtsp_server.log 11:16:17.410916 Running IPv4 version on port 45899 11:16:17.410986 Wrote pid 100300 to log/9/server/rtsp_server.pid 11:16:17.411006 Wrote port 45899 to log/9/server/rtsp_server.port 11:16:18.427965 ====> Client connect 11:16:18.427982 Read 92 bytes 11:16:18.427988 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:45899 User-Agent: curl/8.8.0 Accept: */* ] 11:16:18.428001 Got request: GET /verifiedserver HTTP/1.1 11:16:18.428010 Are-we-friendly question received 11:16:18.428025 Wrote request (92 bytes) input to log/9/server.input 11:16:18.428039 Send response number -2 part 0 11:16:18.428044 Identifying ourselves as friends 11:16:18.428068 Sent off 69 bytes 11:16:18.428078 Response sent (69 bytes) and written to log/9/server.response 11:16:18.428083 special request received, no persistency 11:16:18.428088 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:45899... * Connected to 127.0.0.1 (127.0.0.1) port 45899 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45899 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100300 === End of file rtsp_verify.out === Start of file server.cmd Testnum 572 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100300 === End of file server.response === Start of file stderr572 URL: rtsp://127.0.0.1:45899/572 === End of file stderr572 === Start of file valgrind572 ==101040== ==101040== Process terminating with default action of signal 4 (SIGILL) ==101040== Illegal opcode at address 0x48DC18B ==101040== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101040== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101040== by 0x48DC18B: Curl_open (url.c:519) ==101040== by 0x487CCEF: curl_easy_init (easy.c:368) ==101040== by 0x1090AE: UnknownInlinedFun (lib572.c:60) ==101040== by 0x1090AE: main (first.c:178) ==101040== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101040== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101040== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101040== by 0x4A58EC8: tsearch (tsearch.c:290) ==101040== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101040== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101040== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101040== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101040== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101040== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101040== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101040== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101040== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101040== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101040== by 0x497836B: setlocale (setlocale.c:337) ==101040== by 0x10905B: main (first.c:157) ==101040== ==101040== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101040== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101040== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101040== by 0x4A58EC8: tsearch (tsearch.c:290) ==101040== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101040== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101040== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101040== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101040== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101040== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101040== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101040== by 0x497836B: setlocale (setlocale.c:337) ==101040== by 0x10905B: main (first.c:157) ==101040== ==101040== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101040== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101040== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101040== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101040== by 0x496C9A2CMD (33792): ../libtool --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/valgrind577 ./libtest/lib567 rtsp://127.0.0.1:34687/577 > log/3/stdout577 2> log/3/stderr577 : add_alias (gconv_conf.c:178) ==101040== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101040== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101040== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101040== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101040== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101040== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101040== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101040== by 0x497836B: setlocale (setlocale.c:337) ==101040== by 0x10905B: main (first.c:157) ==101040== ==101040== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101040== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101040== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101040== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101040== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101040== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101040== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101040== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101040== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101040== by 0x497836B: setlocale (setlocale.c:337) ==101040== by 0x10905B: main (first.c:157) ==101040== ==101040== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101040== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101040== by 0x48DC163: Curl_open (url.c:510) ==101040== by 0x487CCEF: curl_easy_init (easy.c:368) ==101040== by 0x1090AE: UnknownInlinedFun (lib572.c:60) ==101040== by 0x1090AE: main (first.c:178) ==101040== ==101040== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101040== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101040== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101040== by 0x4A58EC8: tsearch (tsearch.c:290) ==101040== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101040== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101040== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101040== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101040== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101040== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101040== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101040== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101040== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101040== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101040== by 0x497836B: setlocale (setlocale.c:337) ==101040== by 0x10905B: main (first.c:157) ==101040== ==101040== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101040== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101040== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101040== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101040== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101040== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101040== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101040== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101040== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101040== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101040== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101040== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101040== by 0x497836B: setlocale (setlocale.c:337) ==101040== by 0x10905B: main (first.c:157) ==101040== === End of file valgrind572 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/3/server/rtsp_server.pid" --portfile "log/3/server/rtsp_server.port" --logfile "log/3/rtsp_server.log" --logdir "log/3" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/3/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:34687/verifiedserver" 2>log/3/rtsp_verify.log RUN: RTSP server PID 100445 port 34687 * pid rtsp => 100445 100445 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/3/valgrind577 ./libtest/lib567 rtsp://127.0.0.1:34687/577 > log/3/stdout577 2> log/3/stderr577 577: 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 577 === Start of file rtsp_server.log 11:16:18.651535 Running IPv4 version on port 34687 11:16:18.651617 Wrote pid 100445 to log/3/server/rtsp_server.pid 11:16:18.651635 Wrote port 34687 to log/3/server/rtsp_server.port 11:16:19.667689 ====> Client connect 11:16:19.667712 Read 92 bytes 11:16:19.667720 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:34687 User-Agent: curl/8.8.0 Accept: */* ] 11:16:19.667741 Got request: GET /verifiedserver HTTP/1.1 11:16:19.667748 Are-we-friendly question received 11:16:19.667767 Wrote request (92 bytes) input to log/3/server.input 11:16:19.667786 Send response number -2 part 0 11:16:19.667793 Identifying ourselves as friends 11:16:19.667824 Sent off 69 bytes 11:16:19.667836 Response sent (69 bytes) and written to log/3/server.response 11:16:19.667843 special request received, no persistency 11:16:19.667850 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:34687... * Connected to 127.0.0.1 (127.0.0.1) port 34687 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34687 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 100445 === End of file rtsp_verify.out === Start of file server.cmd Testnum 577 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 100445 === End of file server.response === Start of file stderr577 URL: rtsp://127.0.0.1:34687/577 === End of file stderr577 === Start of file valgrind577 ==101149== ==101149== Process terminating with default action of signal 4 (SIGILL) ==101149== Illegal opcode at address 0x48DC18B ==101149== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101149== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101149== by 0x48DC18B: Curl_open (url.c:519) ==101149== by 0x487CCEF: curl_easy_init (easy.c:368) ==101149== by 0x10908E: UnknownInlinedFun (lib567.c:42) ==101149== by 0x10908E: main (first.c:178) ==101149== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101149== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101149== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101149== by 0x4A58EC8: tsearch (tsearch.c:290) ==101149== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101149== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101149== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101149== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101149== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101149== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101149== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101149== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101149== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101149== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101149== by 0x497836B: setlocale (setlocale.c:337) ==101149== by 0x10904B: main (first.c:157) ==101149== ==101149== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101149== at 0x484CMD (33792): ../libtool --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/valgrind584 ./libtest/lib584 http://127.0.0.1:41583/584 > log/6/stdout584 2> log/6/stderr584 2788: malloc (vg_replace_malloc.c:446) ==101149== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101149== by 0x4A58EC8: tsearch (tsearch.c:290) ==101149== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101149== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101149== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101149== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101149== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101149== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101149== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101149== by 0x497836B: setlocale (setlocale.c:337) ==101149== by 0x10904B: main (first.c:157) ==101149== ==101149== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101149== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101149== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101149== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101149== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101149== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101149== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101149== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101149== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101149== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101149== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101149== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101149== by 0x497836B: setlocale (setlocale.c:337) ==101149== by 0x10904B: main (first.c:157) ==101149== ==101149== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101149== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101149== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101149== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101149== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101149== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101149== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101149== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101149== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101149== by 0x497836B: setlocale (setlocale.c:337) ==101149== by 0x10904B: main (first.c:157) ==101149== ==101149== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101149== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101149== by 0x48DC163: Curl_open (url.c:510) ==101149== by 0x487CCEF: curl_easy_init (easy.c:368) ==101149== by 0x10908E: UnknownInlinedFun (lib567.c:42) ==101149== by 0x10908E: main (first.c:178) ==101149== ==101149== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101149== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101149== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101149== by 0x4A58EC8: tsearch (tsearch.c:290) ==101149== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101149== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101149== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101149== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101149== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101149== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101149== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101149== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101149== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101149== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101149== by 0x497836B: setlocale (setlocale.c:337) ==101149== by 0x10904B: main (first.c:157) ==101149== ==101149== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101149== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101149== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101149== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101149== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101149== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101149== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101149== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101149== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101149== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101149== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101149== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101149== by 0x497836B: setlocale (setlocale.c:337) ==101149== by 0x10904B: main (first.c:157) ==101149== === End of file valgrind577 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/6/valgrind584 ./libtest/lib584 http://127.0.0.1:41583/584 > log/6/stdout584 2> log/6/stderr584 584: 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 584 === Start of file server.cmd Testnum 584 === End of file server.cmd === Start of file stderr584 URL: http://127.0.0.1:41583/584 === End of file stderr584 === Start of file valgrind584 ==101217== ==101217== Process terminating with default action of signal 4 (SIGILL) ==101217== Illegal opcode at address 0x48DC18B ==101217== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101217== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101217== by 0x48DC18B: Curl_open (url.c:519) ==101217== by 0x487CCEF: curl_easy_init (easy.c:368) ==101217== by 0x109088: UnknownInlinedFun (lib589.c:38) ==101217== by 0x109088: main (first.c:178) ==101217== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101217== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101217== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101217== by 0x4A58EC8: tsearch (tsearch.c:290) ==101217== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101217== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101217== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101217== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101217== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101217== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101217== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101217== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101217== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101217== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101217== by 0x497836B: setlocale (setlocale.c:337) ==101217== by 0x109045: main (first.c:157) ==101217== ==101217== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101217== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101217== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101217== by 0x4A58EC8: tsearch (tsearch.c:290) ==101217== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101217== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101217== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101217== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101217== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101217== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101217== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101217== by 0x497836B: setlocale (setlocale.c:337) ==101217== by 0x109045: main (first.c:157) ==101217== ==101217== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101217== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101217== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101217== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101217== by 0x496C9A2:CMD (33792): ../libtool --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/valgrind585 ./libtest/lib585 http://127.0.0.1:44205/585 > log/2/stdout585 2> log/2/stderr585 add_alias (gconv_conf.c:178) ==101217== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101217== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101217== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101217== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101217== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101217== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101217== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101217== by 0x497836B: setlocale (setlocale.c:337) ==101217== by 0x109045: main (first.c:157) ==101217== ==101217== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101217== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101217== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101217== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101217== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101217== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101217== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101217== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101217== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101217== by 0x497836B: setlocale (setlocale.c:337) ==101217== by 0x109045: main (first.c:157) ==101217== ==101217== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101217== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101217== by 0x48DC163: Curl_open (url.c:510) ==101217== by 0x487CCEF: curl_easy_init (easy.c:368) ==101217== by 0x109088: UnknownInlinedFun (lib589.c:38) ==101217== by 0x109088: main (first.c:178) ==101217== ==101217== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101217== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101217== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101217== by 0x4A58EC8: tsearch (tsearch.c:290) ==101217== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101217== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101217== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101217== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101217== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101217== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101217== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101217== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101217== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101217== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101217== by 0x497836B: setlocale (setlocale.c:337) ==101217== by 0x109045: main (first.c:157) ==101217== ==101217== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101217== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101217== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101217== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101217== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101217== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101217== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101217== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101217== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101217== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101217== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101217== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101217== by 0x497836B: setlocale (setlocale.c:337) ==101217== by 0x109045: main (first.c:157) ==101217== === 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/2/valgrind585 ./libtest/lib585 http://127.0.0.1:44205/585 > log/2/stdout585 2> log/2/stderr585 585: 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 585 === Start of file server.cmd Testnum 585 === End of file server.cmd === Start of file stderr585 URL: http://127.0.0.1:44205/585 === End of file stderr585 === Start of file valgrind585 ==101220== ==101220== Process terminating with default action of signal 4 (SIGILL) ==101220== Illegal opcode at address 0x48DC18B ==101220== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101220== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101220== by 0x48DC18B: Curl_open (url.c:519) ==101220== by 0x487CCEF: curl_easy_init (easy.c:368) ==101220== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101220== by 0x1090C4: main (first.c:178) ==101220== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101220== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101220== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101220== by 0x4A58EC8: tsearch (tsearch.c:290) ==101220== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101220== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101220== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101220== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101220== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101220== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101220== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101220== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101220== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101220== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101220== by 0x497836B: setlocale (setlocale.c:337) ==101220== by 0x109056: main (first.c:157) ==101220== ==101220== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101220== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101220== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101220== by 0x4A58EC8: tsearch (tsearch.c:290) ==101220== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101220== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101220== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101220== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101220== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101220== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101220== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101220== by 0x497836B: setlocale (setlocale.c:337) ==101220== by 0x109056: main (first.c:157) ==101220== ==101220== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101220== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101220== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101220== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101220== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101220== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101220== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101220== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101220== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101220== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101220== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101220== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101220== by 0x497836B: setlocale (setlocale.c:337) ==101220== by 0x109056: main (first.c:157) ==101220== ==101220== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101220== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101220== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101220== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101220== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101220== by 0x49DC34A: __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/4/valgrind586 ./libtest/lib585 ftp://127.0.0.1:36137/586 > log/4/stdout586 2> log/4/stderr586 once.c:116) ==101220== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101220== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101220== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101220== by 0x497836B: setlocale (setlocale.c:337) ==101220== by 0x109056: main (first.c:157) ==101220== ==101220== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101220== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101220== by 0x48DC163: Curl_open (url.c:510) ==101220== by 0x487CCEF: curl_easy_init (easy.c:368) ==101220== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101220== by 0x1090C4: main (first.c:178) ==101220== ==101220== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101220== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101220== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101220== by 0x4A58EC8: tsearch (tsearch.c:290) ==101220== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101220== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101220== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101220== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101220== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101220== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101220== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101220== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101220== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101220== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101220== by 0x497836B: setlocale (setlocale.c:337) ==101220== by 0x109056: main (first.c:157) ==101220== ==101220== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101220== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101220== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101220== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101220== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101220== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101220== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101220== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101220== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101220== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101220== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101220== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101220== by 0x497836B: setlocale (setlocale.c:337) ==101220== by 0x109056: main (first.c:157) ==101220== === End of file valgrind585 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/4/valgrind586 ./libtest/lib585 ftp://127.0.0.1:36137/586 > log/4/stdout586 2> log/4/stderr586 586: 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 586 === Start of file server.cmd Testnum 586 === End of file server.cmd === Start of file stderr586 URL: ftp://127.0.0.1:36137/586 === End of file stderr586 === Start of file valgrind586 ==101310== ==101310== Process terminating with default action of signal 4 (SIGILL) ==101310== Illegal opcode at address 0x48DC18B ==101310== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101310== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101310== by 0x48DC18B: Curl_open (url.c:519) ==101310== by 0x487CCEF: curl_easy_init (easy.c:368) ==101310== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101310== by 0x1090C4: main (first.c:178) ==101310== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101310== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101310== by 0x4A58EC8: tsearch (tsearch.c:290) ==101310== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101310== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101310== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101310== by 0x497836B: setlocale (setlocale.c:337) ==101310== by 0x109056: main (first.c:157) ==101310== ==101310== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101310== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101310== by 0x4A58EC8: tsearch (tsearch.c:290) ==101310== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101310== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101310== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101310== by 0x497836B: setlocale (setlocale.c:337) ==101310== by 0x109056: main (first.c:157) ==101310== ==101310== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101310== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101310== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101310== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101310== by 0x497836B: setlocale (setlocale.c:337) ==101310== by 0x109056: main (first.c:157) ==101310== ==101310== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101310== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101310== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101310== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101310== by 0x497836B: setlocale (setlocale.c:337) ==101310== by 0x109056: main (first.c:157) ==101310== ==101310== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101310== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101310== by 0x48DC163: Curl_open (url.c:510) ==101310== by 0x487CCEF: curl_easy_init (easy.c:368) ==101310== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101310== by 0x1090C4: main (first.c:178) ==101310== ==101310== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101310== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101310== by 0x4A58EC8: tsearch (tsearch.c:290) ==101310== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101310== CMD (33792): ../libtool --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/valgrind588 ./libtest/lib525 ftp://127.0.0.1:43509/path/588 log/8/upload588 > log/8/stdout588 2> log/8/stderr588 by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101310== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101310== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101310== by 0x497836B: setlocale (setlocale.c:337) ==101310== by 0x109056: main (first.c:157) ==101310== ==101310== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101310== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101310== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101310== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101310== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101310== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101310== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101310== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101310== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101310== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101310== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101310== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101310== by 0x497836B: setlocale (setlocale.c:337) ==101310== by 0x109056: main (first.c:157) ==101310== === End of file valgrind586 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/8/valgrind588 ./libtest/lib525 ftp://127.0.0.1:43509/path/588 log/8/upload588 > log/8/stdout588 2> log/8/stderr588 588: 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 588 === 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:43509/path/588 === End of file stderr588 === Start of file upload588 Moooooooooooo upload this === End of file upload588 === Start of file valgrind588 ==101403== ==101403== Process terminating with default action of signal 4 (SIGILL) ==101403== Illegal opcode at address 0x48DC18B ==101403== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101403== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101403== by 0x48DC18B: Curl_open (url.c:519) ==101403== by 0x487CCEF: curl_easy_init (easy.c:368) ==101403== by 0x10931B: test (lib525.c:82) ==101403== by 0x109087: main (first.c:178) ==101403== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==101403== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101403== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101403== by 0x4A58EC8: tsearch (tsearch.c:290) ==101403== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101403== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101403== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101403== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101403== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101403== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101403== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101403== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101403== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101403== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101403== by 0x497836B: setlocale (setlocale.c:337) ==101403== by 0x109047: main (first.c:157) ==101403== ==101403== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==101403== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101403== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101403== by 0x4A58EC8: tsearch (tsearch.c:290) ==101403== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101403== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101403== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101403== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101403== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101403== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101403== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101403== by 0x497836B: setlocale (setlocale.c:337) ==101403== by 0x109047: main (first.c:157) ==101403== ==101403== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==101403== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101403== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101403== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101403== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101403== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101403== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101403== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101403== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101403== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101403== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101403== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101403== by 0x497836B: setlocale (setlocale.c:337) ==101403== by 0x109047: main (first.c:157) ==101403== ==101403== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==101403== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101403== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101403== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101403== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101403== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101403== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101403== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101403== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101403== by 0x497836B: setlocale (setlocale.c:337) ==101403== by 0x109047: main (first.c:157) ==101403== ==101403== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==101403== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101403== by 0x48DC163: Curl_open (url.c:510) ==101403== by 0x487CCEF: curl_easy_init (easy.c:368) ==101403== by 0x10931B: test (lib525.c:82) ==101403== by 0x109087: main (first.c:178) ==101403== ==101403== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==101403== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101403== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101403== by 0x4A58EC8: tsearch (tsearch.c:290) ==101403== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101403== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101403== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101403== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101403== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101403== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101403== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101403== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101403== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101403== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101403== by 0x497836B: setlocale (setlocale.c:337) ==101403== by 0x109047: main (first.c:157) ==101403== ==101403== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==101403== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101403== by 0x496C669: add_CMD (33792): ../libtool --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/valgrind587 ./libtest/lib587 http://127.0.0.1:35843/587 > log/11/stdout587 2> log/11/stderr587 CMD (33792): ../libtool --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/valgrind589 ./libtest/lib589 http://127.0.0.1:39283/589 > log/1/stdout589 2> log/1/stderr589 CMD (33792): ../libtool --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/valgrind590 ./libtest/lib590 http://test.remote.example.com/path/590 http://127.0.0.1:44175 > log/12/stdout590 2> log/12/stderr590 alias2.part.0 (gconv_conf.c:132) ==101403== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101403== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101403== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101403== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101403== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101403== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101403== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101403== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101403== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101403== by 0x497836B: setlocale (setlocale.c:337) ==101403== by 0x109047: main (first.c:157) ==101403== === 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/1/valgrind589 ./libtest/lib589 http://127.0.0.1:39283/589 > log/1/stdout589 2> log/1/stderr589 589: 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 589 === Start of file server.cmd Testnum 589 === End of file server.cmd === Start of file stderr589 URL: http://127.0.0.1:39283/589 === End of file stderr589 === Start of file valgrind589 ==101396== ==101396== Process terminating with default action of signal 4 (SIGILL) ==101396== Illegal opcode at address 0x48DC18B ==101396== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101396== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101396== by 0x48DC18B: Curl_open (url.c:519) ==101396== by 0x487CCEF: curl_easy_init (easy.c:368) ==101396== by 0x10908A: UnknownInlinedFun (lib589.c:38) ==101396== by 0x10908A: main (first.c:178) ==101396== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101396== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101396== by 0x4A58EC8: tsearch (tsearch.c:290) ==101396== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101396== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101396== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101396== by 0x497836B: setlocale (setlocale.c:337) ==101396== by 0x109047: main (first.c:157) ==101396== ==101396== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101396== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101396== by 0x4A58EC8: tsearch (tsearch.c:290) ==101396== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101396== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101396== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101396== by 0x497836B: setlocale (setlocale.c:337) ==101396== by 0x109047: main (first.c:157) ==101396== ==101396== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101396== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101396== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101396== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101396== by 0x497836B: setlocale (setlocale.c:337) ==101396== by 0x109047: main (first.c:157) ==101396== ==101396== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101396== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101396== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101396== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101396== by 0x497836B: setlocale (setlocale.c:337) ==101396== by 0x109047: main (first.c:157) ==101396== ==101396== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101396== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101396== by 0x48DC163: Curl_open (url.c:510) ==101396== by 0x487CCEF: curl_easy_init (easy.c:368) ==101396== by 0x10908A: UnknownInlinedFun (lib589.c:38) ==101396== by 0x10908A: main (first.c:178) ==101396== ==101396== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101396== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101396== by 0x4A58EC8: tsearch (tsearch.c:290) ==101396== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101396== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101396== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101396== by 0x497836B: setlocale (setlocale.c:337) ==101396== by 0x109047: main (first.c:157) ==101396== ==101396== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101396== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101396== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101396== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101396== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101396== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101396== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101396== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101396== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101396== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101396== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101396== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101396== by 0x497836B: setlocale (setlocale.c:337) ==101396== by 0x109047: main (first.c:157) ==101396== === End of file valgrind589 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/12/valgrindCMD (33792): ../libtool --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/valgrind591 ./libtest/lib591 ftp://127.0.0.1:45903/path/591 8 log/7/upload591 > log/7/stdout591 2> log/7/stderr591 590 ./libtest/lib590 http://test.remote.example.com/path/590 http://127.0.0.1:44175 > log/12/stdout590 2> log/12/stderr590 590: 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 590 === Start of file server.cmd Testnum 590 === End of file server.cmd === Start of file stderr590 URL: http://test.remote.example.com/path/590 === End of file stderr590 === Start of file valgrind590 ==101500== ==101500== Process terminating with default action of signal 4 (SIGILL) ==101500== Illegal opcode at address 0x48DC18B ==101500== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101500== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101500== by 0x48DC18B: Curl_open (url.c:519) ==101500== by 0x487CCEF: curl_easy_init (easy.c:368) ==101500== by 0x10909A: UnknownInlinedFun (lib590.c:51) ==101500== by 0x10909A: main (first.c:178) ==101500== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101500== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101500== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101500== by 0x4A58EC8: tsearch (tsearch.c:290) ==101500== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101500== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101500== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101500== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101500== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101500== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101500== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101500== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101500== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101500== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101500== by 0x497836B: setlocale (setlocale.c:337) ==101500== by 0x109047: main (first.c:157) ==101500== ==101500== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101500== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101500== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101500== by 0x4A58EC8: tsearch (tsearch.c:290) ==101500== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101500== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101500== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101500== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101500== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101500== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101500== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101500== by 0x497836B: setlocale (setlocale.c:337) ==101500== by 0x109047: main (first.c:157) ==101500== ==101500== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101500== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101500== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101500== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101500== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101500== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101500== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101500== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101500== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101500== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101500== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101500== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101500== by 0x497836B: setlocale (setlocale.c:337) ==101500== by 0x109047: main (first.c:157) ==101500== ==101500== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101500== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101500== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101500== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101500== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101500== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101500== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101500== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101500== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101500== by 0x497836B: setlocale (setlocale.c:337) ==101500== by 0x109047: main (first.c:157) ==101500== ==101500== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101500== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101500== by 0x48DC163: Curl_open (url.c:510) ==101500== by 0x487CCEF: curl_easy_init (easy.c:368) ==101500== by 0x10909A: UnknownInlinedFun (lib590.c:51) ==101500== by 0x10909A: main (first.c:178) ==101500== ==101500== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101500== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101500== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101500== by 0x4A58EC8: tsearch (tsearch.c:290) ==101500== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101500== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101500== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101500== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101500== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101500== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101500== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101500== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101500== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101500== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101500== by 0x497836B: setlocale (setlocale.c:337) ==101500== by 0x109047: main (first.c:157) ==101500== ==101500== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101500== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101500== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101500== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101500== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101500== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101500== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101500== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101500== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101500== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101500== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101500== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101500== by 0x497836B: setlocale (setlocale.c:337) ==101500== by 0x109047: main (first.c:157) ==101500== === End of file valgrind590 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/7/valgrind591 ./libtest/lib591 ftp://127.0.0.1:45903/path/591 8 log/7/upload591 > log/7/stdout591 2> log/7/stderr591 591: 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 591 === 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:45903/path/591 === End of file stderr591 === Start of file upload591 Moooooooooooo for 591 upload this === End of file upload591 === Start of file valgrind591 ==101550== ==101550== Process terminating with default action of signal 4 (SIGILL) ==101550== Illegal opcode at address 0x48DC18B ==101550== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101550== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101550== by 0x48DC18B: Curl_open (url.c:519) ==101550== by 0x487CCEF: curl_easy_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/9/valgrind592 ./libtest/lib591 ftp://127.0.0.1:39811/path/592 8 log/9/upload592 > log/9/stdout592 2> log/9/stderr592 it (easy.c:368) ==101550== by 0x1092F2: test (lib591.c:64) ==101550== by 0x109098: main (first.c:178) ==101550== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==101550== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101550== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101550== by 0x4A58EC8: tsearch (tsearch.c:290) ==101550== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101550== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101550== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101550== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101550== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101550== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101550== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101550== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101550== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101550== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101550== by 0x497836B: setlocale (setlocale.c:337) ==101550== by 0x109047: main (first.c:157) ==101550== ==101550== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==101550== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101550== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101550== by 0x4A58EC8: tsearch (tsearch.c:290) ==101550== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101550== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101550== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101550== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101550== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101550== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101550== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101550== by 0x497836B: setlocale (setlocale.c:337) ==101550== by 0x109047: main (first.c:157) ==101550== ==101550== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==101550== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101550== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101550== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101550== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101550== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101550== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101550== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101550== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101550== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101550== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101550== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101550== by 0x497836B: setlocale (setlocale.c:337) ==101550== by 0x109047: main (first.c:157) ==101550== ==101550== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==101550== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101550== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101550== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101550== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101550== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101550== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101550== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101550== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101550== by 0x497836B: setlocale (setlocale.c:337) ==101550== by 0x109047: main (first.c:157) ==101550== ==101550== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==101550== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101550== by 0x48DC163: Curl_open (url.c:510) ==101550== by 0x487CCEF: curl_easy_init (easy.c:368) ==101550== by 0x1092F2: test (lib591.c:64) ==101550== by 0x109098: main (first.c:178) ==101550== ==101550== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==101550== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101550== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101550== by 0x4A58EC8: tsearch (tsearch.c:290) ==101550== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101550== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101550== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101550== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101550== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101550== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101550== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101550== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101550== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101550== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101550== by 0x497836B: setlocale (setlocale.c:337) ==101550== by 0x109047: main (first.c:157) ==101550== ==101550== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==101550== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101550== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101550== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101550== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101550== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101550== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101550== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101550== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101550== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101550== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101550== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101550== by 0x497836B: setlocale (setlocale.c:337) ==101550== by 0x109047: main (first.c:157) ==101550== === 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/9/valgrind592 ./libtest/lib591 ftp://127.0.0.1:39811/path/592 8 log/9/upload592 > log/9/stdout592 2> log/9/stderr592 592: 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 592 === 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:39811/path/592 === End of file stderr592 === Start of file upload592 Moooooooooooo for 592 upload this === End of file upload592 === Start of file valgrind592 ==101568== ==101568== Process terminating with default action of signal 4 (SIGILL) ==101568== Illegal opcode at address 0x48DC18B ==101568== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101568== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101568== by 0x48DC18B: Curl_open (url.c:519) ==101568== by 0x487CCEF: curl_easy_init (easy.c:368) ==101568== by 0x1092F2: test (lib591.c:64) ==101568== by 0x109098: main (first.c:178) ==101568== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==101568== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101568== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101568== by 0x4A58EC8: tsearch (tsearch.c:290) ==101568== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101568== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101568== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101568== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101568== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101568== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101568== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101568== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (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/3/valgrind593 ./libtest/lib591 ftp://127.0.0.1:45493/path/593 8 log/3/upload593 > log/3/stdout593 2> log/3/stderr593 d_once.c:143) ==101568== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101568== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101568== by 0x497836B: setlocale (setlocale.c:337) ==101568== by 0x109047: main (first.c:157) ==101568== ==101568== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==101568== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101568== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101568== by 0x4A58EC8: tsearch (tsearch.c:290) ==101568== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101568== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101568== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101568== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101568== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101568== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101568== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101568== by 0x497836B: setlocale (setlocale.c:337) ==101568== by 0x109047: main (first.c:157) ==101568== ==101568== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==101568== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101568== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101568== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101568== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101568== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101568== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101568== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101568== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101568== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101568== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101568== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101568== by 0x497836B: setlocale (setlocale.c:337) ==101568== by 0x109047: main (first.c:157) ==101568== ==101568== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==101568== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101568== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101568== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101568== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101568== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101568== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101568== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101568== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101568== by 0x497836B: setlocale (setlocale.c:337) ==101568== by 0x109047: main (first.c:157) ==101568== ==101568== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==101568== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101568== by 0x48DC163: Curl_open (url.c:510) ==101568== by 0x487CCEF: curl_easy_init (easy.c:368) ==101568== by 0x1092F2: test (lib591.c:64) ==101568== by 0x109098: main (first.c:178) ==101568== ==101568== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==101568== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101568== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101568== by 0x4A58EC8: tsearch (tsearch.c:290) ==101568== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101568== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101568== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101568== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101568== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101568== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101568== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101568== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101568== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101568== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101568== by 0x497836B: setlocale (setlocale.c:337) ==101568== by 0x109047: main (first.c:157) ==101568== ==101568== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==101568== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101568== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101568== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101568== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101568== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101568== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101568== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101568== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101568== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101568== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101568== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101568== by 0x497836B: setlocale (setlocale.c:337) ==101568== by 0x109047: main (first.c:157) ==101568== === 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/3/valgrind593 ./libtest/lib591 ftp://127.0.0.1:45493/path/593 8 log/3/upload593 > log/3/stdout593 2> log/3/stderr593 593: 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 593 === 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:45493/path/593 === End of file stderr593 === Start of file upload593 Moooooooooooo for 593 upload this === End of file upload593 === Start of file valgrind593 ==101660== ==101660== Process terminating with default action of signal 4 (SIGILL) ==101660== Illegal opcode at address 0x48DC18B ==101660== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101660== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101660== by 0x48DC18B: Curl_open (url.c:519) ==101660== by 0x487CCEF: curl_easy_init (easy.c:368) ==101660== by 0x1092F2: test (lib591.c:64) ==101660== by 0x109098: main (first.c:178) ==101660== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==101660== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101660== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101660== by 0x4A58EC8: tsearch (tsearch.c:290) ==101660== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101660== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101660== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101660== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101660== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101660== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101660== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101660== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101660== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101660== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101660== by 0x497836B: setlocale (setlocale.c:337) ==101660== by 0x109047: main (first.c:157) ==101660== ==101660== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==101660== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101660== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101660== by 0x4A58EC8: tsearch (tsearch.c:290) ==101660== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101660== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101660== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101660== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101660== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101660== CMD (33792): ../libtool --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/valgrind595 ./libtest/lib585 ftp://127.0.0.1:35103/595 log/6/ip595 > log/6/stdout595 2> log/6/stderr595 by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101660== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101660== by 0x497836B: setlocale (setlocale.c:337) ==101660== by 0x109047: main (first.c:157) ==101660== ==101660== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==101660== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101660== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101660== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101660== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101660== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101660== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101660== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101660== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101660== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101660== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101660== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101660== by 0x497836B: setlocale (setlocale.c:337) ==101660== by 0x109047: main (first.c:157) ==101660== ==101660== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==101660== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101660== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101660== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101660== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101660== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101660== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101660== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101660== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101660== by 0x497836B: setlocale (setlocale.c:337) ==101660== by 0x109047: main (first.c:157) ==101660== ==101660== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==101660== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101660== by 0x48DC163: Curl_open (url.c:510) ==101660== by 0x487CCEF: curl_easy_init (easy.c:368) ==101660== by 0x1092F2: test (lib591.c:64) ==101660== by 0x109098: main (first.c:178) ==101660== ==101660== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==101660== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101660== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101660== by 0x4A58EC8: tsearch (tsearch.c:290) ==101660== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101660== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101660== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101660== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101660== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101660== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101660== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101660== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101660== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101660== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101660== by 0x497836B: setlocale (setlocale.c:337) ==101660== by 0x109047: main (first.c:157) ==101660== ==101660== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==101660== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101660== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101660== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101660== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101660== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101660== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101660== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101660== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101660== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101660== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101660== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101660== by 0x497836B: setlocale (setlocale.c:337) ==101660== by 0x109047: main (first.c:157) ==101660== === 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/6/valgrind595 ./libtest/lib585 ftp://127.0.0.1:35103/595 log/6/ip595 > log/6/stdout595 2> log/6/stderr595 595: 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 595 === Start of file server.cmd Testnum 595 === End of file server.cmd === Start of file stderr595 URL: ftp://127.0.0.1:35103/595 === End of file stderr595 === Start of file valgrind595 ==101729== ==101729== Process terminating with default action of signal 4 (SIGILL) ==101729== Illegal opcode at address 0x48DC18B ==101729== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101729== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101729== by 0x48DC18B: Curl_open (url.c:519) ==101729== by 0x487CCEF: curl_easy_init (easy.c:368) ==101729== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101729== by 0x1090C4: main (first.c:178) ==101729== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101729== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101729== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101729== by 0x4A58EC8: tsearch (tsearch.c:290) ==101729== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101729== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101729== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101729== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101729== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101729== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101729== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101729== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101729== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101729== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101729== by 0x497836B: setlocale (setlocale.c:337) ==101729== by 0x109056: main (first.c:157) ==101729== ==101729== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101729== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101729== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101729== by 0x4A58EC8: tsearch (tsearch.c:290) ==101729== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101729== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101729== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101729== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101729== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101729== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101729== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101729== by 0x497836B: setlocale (setlocale.c:337) ==101729== by 0x109056: main (first.c:157) ==101729== ==101729== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101729== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101729== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101729== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101729== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101729== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101729== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101729== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101729== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101729== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101729== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101729== by 0x4975ABD: _nl_find_locCMD (33792): ../libtool --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/valgrind596 ./libtest/lib585 ftp://127.0.0.1:42239/596 log/2/ip596 activeftp > log/2/stdout596 2> log/2/stderr596 ale (findlocale.c:291) ==101729== by 0x497836B: setlocale (setlocale.c:337) ==101729== by 0x109056: main (first.c:157) ==101729== ==101729== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101729== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101729== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101729== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101729== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101729== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101729== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101729== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101729== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101729== by 0x497836B: setlocale (setlocale.c:337) ==101729== by 0x109056: main (first.c:157) ==101729== ==101729== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101729== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101729== by 0x48DC163: Curl_open (url.c:510) ==101729== by 0x487CCEF: curl_easy_init (easy.c:368) ==101729== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101729== by 0x1090C4: main (first.c:178) ==101729== ==101729== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101729== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101729== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101729== by 0x4A58EC8: tsearch (tsearch.c:290) ==101729== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101729== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101729== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101729== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101729== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101729== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101729== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101729== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101729== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101729== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101729== by 0x497836B: setlocale (setlocale.c:337) ==101729== by 0x109056: main (first.c:157) ==101729== ==101729== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101729== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101729== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101729== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101729== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101729== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101729== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101729== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101729== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101729== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101729== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101729== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101729== by 0x497836B: setlocale (setlocale.c:337) ==101729== by 0x109056: main (first.c:157) ==101729== === End of file valgrind595 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/2/valgrind596 ./libtest/lib585 ftp://127.0.0.1:42239/596 log/2/ip596 activeftp > log/2/stdout596 2> log/2/stderr596 596: 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 596 === Start of file server.cmd Testnum 596 === End of file server.cmd === Start of file stderr596 URL: ftp://127.0.0.1:42239/596 === End of file stderr596 === Start of file valgrind596 ==101730== ==101730== Process terminating with default action of signal 4 (SIGILL) ==101730== Illegal opcode at address 0x48DC18B ==101730== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101730== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101730== by 0x48DC18B: Curl_open (url.c:519) ==101730== by 0x487CCEF: curl_easy_init (easy.c:368) ==101730== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101730== by 0x1090C4: main (first.c:178) ==101730== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101730== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101730== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101730== by 0x4A58EC8: tsearch (tsearch.c:290) ==101730== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101730== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101730== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101730== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101730== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101730== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101730== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101730== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101730== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101730== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101730== by 0x497836B: setlocale (setlocale.c:337) ==101730== by 0x109056: main (first.c:157) ==101730== ==101730== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101730== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101730== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101730== by 0x4A58EC8: tsearch (tsearch.c:290) ==101730== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101730== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101730== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101730== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101730== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101730== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101730== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101730== by 0x497836B: setlocale (setlocale.c:337) ==101730== by 0x109056: main (first.c:157) ==101730== ==101730== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101730== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101730== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101730== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101730== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101730== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101730== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101730== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101730== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101730== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101730== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101730== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101730== by 0x497836B: setlocale (setlocale.c:337) ==101730== by 0x109056: main (first.c:157) ==101730== ==101730== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101730== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101730== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101730== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101730== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101730== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101730== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101730== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101730== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101730== by 0x497836B: setlocale (setlocale.c:337) ==101730== by 0x109056: main (first.c:157) ==101730== ==101730== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101730== at 0x4849BF3: calloc (vg_replace_malloc.c:1675CMD (33792): ../libtool --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/valgrind597 ./libtest/lib597 ftp://127.0.0.1:36137 > log/4/stdout597 2> log/4/stderr597 ) ==101730== by 0x48DC163: Curl_open (url.c:510) ==101730== by 0x487CCEF: curl_easy_init (easy.c:368) ==101730== by 0x1090C4: UnknownInlinedFun (lib500.c:73) ==101730== by 0x1090C4: main (first.c:178) ==101730== ==101730== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101730== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101730== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101730== by 0x4A58EC8: tsearch (tsearch.c:290) ==101730== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101730== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101730== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101730== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101730== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101730== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101730== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101730== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101730== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101730== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101730== by 0x497836B: setlocale (setlocale.c:337) ==101730== by 0x109056: main (first.c:157) ==101730== ==101730== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101730== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101730== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101730== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101730== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101730== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101730== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101730== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101730== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101730== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101730== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101730== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101730== by 0x497836B: setlocale (setlocale.c:337) ==101730== by 0x109056: main (first.c:157) ==101730== === End of file valgrind596 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/4/valgrind597 ./libtest/lib597 ftp://127.0.0.1:36137 > log/4/stdout597 2> log/4/stderr597 597: 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 597 === Start of file server.cmd Testnum 597 === End of file server.cmd === Start of file stderr597 URL: ftp://127.0.0.1:36137 === End of file stderr597 === Start of file valgrind597 ==101823== ==101823== Process terminating with default action of signal 4 (SIGILL) ==101823== Illegal opcode at address 0x48DC18B ==101823== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101823== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101823== by 0x48DC18B: Curl_open (url.c:519) ==101823== by 0x487CCEF: curl_easy_init (easy.c:368) ==101823== by 0x1092F1: test.part.0 (lib597.c:56) ==101823== by 0x10909E: UnknownInlinedFun (lib597.c:54) ==101823== by 0x10909E: main (first.c:178) ==101823== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101823== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101823== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101823== by 0x4A58EC8: tsearch (tsearch.c:290) ==101823== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101823== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101823== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101823== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101823== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101823== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101823== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101823== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101823== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101823== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101823== by 0x497836B: setlocale (setlocale.c:337) ==101823== by 0x109047: main (first.c:157) ==101823== ==101823== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101823== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101823== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101823== by 0x4A58EC8: tsearch (tsearch.c:290) ==101823== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101823== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101823== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101823== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101823== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101823== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101823== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101823== by 0x497836B: setlocale (setlocale.c:337) ==101823== by 0x109047: main (first.c:157) ==101823== ==101823== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101823== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101823== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101823== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101823== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101823== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101823== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101823== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101823== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101823== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101823== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101823== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101823== by 0x497836B: setlocale (setlocale.c:337) ==101823== by 0x109047: main (first.c:157) ==101823== ==101823== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101823== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101823== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101823== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101823== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101823== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101823== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101823== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101823== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101823== by 0x497836B: setlocale (setlocale.c:337) ==101823== by 0x109047: main (first.c:157) ==101823== ==101823== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101823== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101823== by 0x48DC163: Curl_open (url.c:510) ==101823== by 0x487CCEF: curl_easy_init (easy.c:368) ==101823== by 0x1092F1: test.part.0 (lib597.c:56) ==101823== by 0x10909E: UnknownInlinedFun (lib597.c:54) ==101823== by 0x10909E: main (first.c:178) ==101823== ==101823== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101823== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101823== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101823== by 0x4A58EC8: tsearch (tsearch.c:290) ==101823== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101823== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101823== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101823== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101823== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101823== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101823== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.CMD (33792): ../libtool --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/valgrind598 ./libtest/lib598 http://127.0.0.1:33791/598 > log/8/stdout598 2> log/8/stderr598 c:116) ==101823== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101823== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101823== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101823== by 0x497836B: setlocale (setlocale.c:337) ==101823== by 0x109047: main (first.c:157) ==101823== ==101823== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101823== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101823== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101823== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101823== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101823== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101823== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101823== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101823== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101823== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101823== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101823== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101823== by 0x497836B: setlocale (setlocale.c:337) ==101823== by 0x109047: main (first.c:157) ==101823== === End of file valgrind597 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/8/valgrind598 ./libtest/lib598 http://127.0.0.1:33791/598 > log/8/stdout598 2> log/8/stderr598 598: 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 598 === Start of file server.cmd Testnum 598 === End of file server.cmd === Start of file stderr598 URL: http://127.0.0.1:33791/598 === End of file stderr598 === Start of file valgrind598 ==101856== ==101856== Process terminating with default action of signal 4 (SIGILL) ==101856== Illegal opcode at address 0x48DC18B ==101856== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101856== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101856== by 0x48DC18B: Curl_open (url.c:519) ==101856== by 0x487CCEF: curl_easy_init (easy.c:368) ==101856== by 0x109088: UnknownInlinedFun (lib598.c:38) ==101856== by 0x109088: main (first.c:178) ==101856== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101856== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101856== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101856== by 0x4A58EC8: tsearch (tsearch.c:290) ==101856== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101856== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101856== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101856== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101856== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101856== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101856== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101856== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101856== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101856== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101856== by 0x497836B: setlocale (setlocale.c:337) ==101856== by 0x109045: main (first.c:157) ==101856== ==101856== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101856== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101856== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101856== by 0x4A58EC8: tsearch (tsearch.c:290) ==101856== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101856== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101856== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101856== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101856== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101856== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101856== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101856== by 0x497836B: setlocale (setlocale.c:337) ==101856== by 0x109045: main (first.c:157) ==101856== ==101856== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101856== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101856== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101856== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101856== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101856== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101856== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101856== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101856== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101856== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101856== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101856== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101856== by 0x497836B: setlocale (setlocale.c:337) ==101856== by 0x109045: main (first.c:157) ==101856== ==101856== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101856== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101856== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101856== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101856== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101856== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101856== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101856== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101856== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101856== by 0x497836B: setlocale (setlocale.c:337) ==101856== by 0x109045: main (first.c:157) ==101856== ==101856== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101856== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101856== by 0x48DC163: Curl_open (url.c:510) ==101856== by 0x487CCEF: curl_easy_init (easy.c:368) ==101856== by 0x109088: UnknownInlinedFun (lib598.c:38) ==101856== by 0x109088: main (first.c:178) ==101856== ==101856== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101856== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101856== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101856== by 0x4A58EC8: tsearch (tsearch.c:290) ==101856== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101856== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101856== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101856== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101856== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101856== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101856== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101856== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101856== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101856== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101856== by 0x497836B: setlocale (setlocale.c:337) ==101856== by 0x109045: main (first.c:157) ==101856== ==101856== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101856== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101856== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101856== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101856== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101856== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101856== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101856== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101856== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101856== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c: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/1/valgrind599 ./libtest/lib599 http://127.0.0.1:39283/599 log/1/ip599 > log/1/stdout599 2> log/1/stderr599 43) ==101856== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101856== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101856== by 0x497836B: setlocale (setlocale.c:337) ==101856== by 0x109045: main (first.c:157) ==101856== === 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/1/valgrind599 ./libtest/lib599 http://127.0.0.1:39283/599 log/1/ip599 > log/1/stdout599 2> log/1/stderr599 599: data FAILED: --- log/1/check-expected 2024-05-23 11:16:21.300413443 +0200 +++ log/1/check-generated 2024-05-23 11:16:21.300413443 +0200 @@ -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/1/ 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 server.cmd Testnum 599 === End of file server.cmd === Start of file stderr599 URL: http://127.0.0.1:39283/599 === End of file stderr599 === Start of file valgrind599 ==101918== ==101918== Process terminating with default action of signal 4 (SIGILL) ==101918== Illegal opcode at address 0x48DC18B ==101918== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101918== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101918== by 0x48DC18B: Curl_open (url.c:519) ==101918== by 0x487CCEF: curl_easy_init (easy.c:368) ==101918== by 0x1090B1: UnknownInlinedFun (lib599.c:55) ==101918== by 0x1090B1: main (first.c:178) ==101918== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==101918== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101918== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101918== by 0x4A58EC8: tsearch (tsearch.c:290) ==101918== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101918== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101918== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101918== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101918== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101918== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101918== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101918== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101918== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101918== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101918== by 0x497836B: setlocale (setlocale.c:337) ==101918== by 0x109056: main (first.c:157) ==101918== ==101918== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==101918== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101918== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101918== by 0x4A58EC8: tsearch (tsearch.c:290) ==101918== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101918== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101918== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101918== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101918== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101918== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101918== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101918== by 0x497836B: setlocale (setlocale.c:337) ==101918== by 0x109056: main (first.c:157) ==101918== ==101918== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==101918== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101918== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101918== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101918== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101918== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101918== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101918== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101918== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101918== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101918== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101918== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101918== by 0x497836B: setlocale (setlocale.c:337) ==101918== by 0x109056: main (first.c:157) ==101918== ==101918== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==101918== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101918== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101918== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101918== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101918== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101918== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101918== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101918== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101918== by 0x497836B: setlocale (setlocale.c:337) ==101918== by 0x109056: main (first.c:157) ==101918== ==101918== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==101918== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101918== by 0x48DC163: Curl_open (url.c:510) ==101918== by 0x487CCEF: curl_easy_init (easy.c:368) ==101918== by 0x1090B1: UnknownInlinedFun (lib599.c:55) ==101918== by 0x1090B1: main (first.c:178) ==101918== ==101918== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==101918== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101918== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101918== by 0x4A58EC8: tsearch (tsearch.c:290) ==101918== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101918== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101918== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101918== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101918== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101918== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101918== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101918== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101918== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101918== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101918== by 0x497836B: setlocale (setlocale.c:337) ==101918== by 0x109056: main (first.c:157) ==101918== ==101918== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==101918== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101918== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101918== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101918== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101918== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101918== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101918== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101918== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101918== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101918== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101918== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101918== by 0x497836B: setlocale (setlocale.c:337) ==101918RUN: Process with pid 100121 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/valgrind632 ../src/curl -q --output log/10/curl632.out --include --trace-ascii log/10/trace632 --trace-time --hostpubmd5 00 --key log/10/server/curl_client_key --pubkey log/10/server/curl_client_key.pub -u builduser: sftp://127.0.0.1:47/startdir/src/build-curl/tests/log/10/irrelevant-file --insecure > log/10/stdout632 2> log/10/stderr632 == by 0x109056: main (first.c:157) ==101918== === 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/11/valgrind587 ./libtest/lib587 http://127.0.0.1:35843/587 > log/11/stdout587 2> log/11/stderr587 587: 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 587 === Start of file server.cmd Testnum 587 === End of file server.cmd === Start of file stderr587 URL: http://127.0.0.1:35843/587 === End of file stderr587 === Start of file valgrind587 ==101326== ==101326== Process terminating with default action of signal 4 (SIGILL) ==101326== Illegal opcode at address 0x48DC18B ==101326== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==101326== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==101326== by 0x48DC18B: Curl_open (url.c:519) ==101326== by 0x487CCEF: curl_easy_init (easy.c:368) ==101326== by 0x1093E9: once (lib554.c:149) ==101326== by 0x10908D: UnknownInlinedFun (lib554.c:201) ==101326== by 0x10908D: main (first.c:178) ==101326== 408 bytes in 17 blocks are possibly lost in loss record 616 of 666 ==101326== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101326== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101326== by 0x4A58EC8: tsearch (tsearch.c:290) ==101326== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101326== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101326== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101326== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101326== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101326== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101326== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101326== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101326== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101326== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101326== by 0x497836B: setlocale (setlocale.c:337) ==101326== by 0x109047: main (first.c:157) ==101326== ==101326== 552 bytes in 23 blocks are possibly lost in loss record 621 of 666 ==101326== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101326== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101326== by 0x4A58EC8: tsearch (tsearch.c:290) ==101326== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101326== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101326== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101326== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101326== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101326== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101326== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101326== by 0x497836B: setlocale (setlocale.c:337) ==101326== by 0x109047: main (first.c:157) ==101326== ==101326== 681 bytes in 17 blocks are possibly lost in loss record 627 of 666 ==101326== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101326== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101326== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101326== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101326== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101326== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101326== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==101326== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101326== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101326== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101326== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101326== by 0x497836B: setlocale (setlocale.c:337) ==101326== by 0x109047: main (first.c:157) ==101326== ==101326== 1,018 bytes in 23 blocks are possibly lost in loss record 641 of 666 ==101326== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101326== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101326== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==101326== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==101326== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101326== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101326== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101326== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101326== by 0x497836B: setlocale (setlocale.c:337) ==101326== by 0x109047: main (first.c:157) ==101326== ==101326== 5,288 bytes in 1 blocks are definitely lost in loss record 660 of 666 ==101326== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==101326== by 0x48DC163: Curl_open (url.c:510) ==101326== by 0x487CCEF: curl_easy_init (easy.c:368) ==101326== by 0x1093E9: once (lib554.c:149) ==101326== by 0x10908D: UnknownInlinedFun (lib554.c:201) ==101326== by 0x10908D: main (first.c:178) ==101326== ==101326== 11,664 bytes in 486 blocks are possibly lost in loss record 663 of 666 ==101326== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101326== by 0x4A58EC8: __tsearch (tsearch.c:337) ==101326== by 0x4A58EC8: tsearch (tsearch.c:290) ==101326== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==101326== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101326== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101326== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101326== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101326== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101326== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101326== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101326== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101326== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101326== by 0x497836B: setlocale (setlocale.c:337) ==101326== by 0x109047: main (first.c:157) ==101326== ==101326== 18,800 bytes in 486 blocks are possibly lost in loss record 665 of 666 ==101326== at 0x4842788: malloc (vg_replace_malloc.c:446) ==101326== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==101326== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==101326== by 0x496C9A2: add_alias (gconv_conf.c:178) ==101326== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101326== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101326== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==101326== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101326== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101326== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==101326== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==101326== by 0x497836B: setlocale (setlocale.c:337) ==101326== by 0x109047: main (first.c:157) ==101326== === End of file valgrind587 startnew: perl -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 38417 startnew: child process has died, server might start up RUN: failed to start the SSH server on 38417 test 0583 SKIPPED: failed starting SSH server test 0610 SKIPPED: failed starting SSH server test 0611 SKIPPED: failed starting SSH server * 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/10/valgrind632 ../src/curl -q --output log/10/curl632.out --include --trace-ascii log/10/trace632 --trace-time --hostpubmd5 00 --key log/10/server/curl_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/10/valgrind643 ./libtest/lib643 http://127.0.0.1:36145/643 > log/10/stdout643 2> log/10/stderr643 lient_key --pubkey log/10/server/curl_client_key.pub -u builduser: sftp://127.0.0.1:47/startdir/src/build-curl/tests/log/10/irrelevant-file --insecure > log/10/stdout632 2> log/10/stderr632 curl returned 132, when expecting 2 632: exit FAILED == Contents of files in the log/10/ dir after test 632 === Start of file server.cmd Testnum 632 === End of file server.cmd === Start of file valgrind632 ==101996== ==101996== Process terminating with default action of signal 4 (SIGILL) ==101996== Illegal opcode at address 0x10B06D ==101996== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==101996== by 0x10B06D: 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/10/valgrind643 ./libtest/lib643 http://127.0.0.1:36145/643 > log/10/stdout643 2> log/10/stderr643 643: 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 643 === Start of file server.cmd Testnum 643 === End of file server.cmd === Start of file stderr643 URL: http://127.0.0.1:36145/643 === End of file stderr643 === Start of file valgrind643 ==102048== ==102048== Process terminating with default action of signal 4 (SIGILL) ==102048== Illegal opcode at address 0x48DC18B ==102048== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102048== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102048== by 0x48DC18B: Curl_open (url.c:519) ==102048== by 0x487CCEF: curl_easy_init (easy.c:368) ==102048== by 0x109345: once (lib643.c:76) ==102048== by 0x109095: UnknownInlinedFun (lib643.c:259) ==102048== by 0x109095: main (first.c:178) ==102048== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102048== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102048== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102048== by 0x4A58EC8: tsearch (tsearch.c:290) ==102048== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102048== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102048== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102048== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102048== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102048== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102048== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102048== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102048== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102048== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102048== by 0x497836B: setlocale (setlocale.c:337) ==102048== by 0x10904B: main (first.c:157) ==102048== ==102048== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102048== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102048== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102048== by 0x4A58EC8: tsearch (tsearch.c:290) ==102048== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102048== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102048== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102048== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102048== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102048== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102048== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102048== by 0x497836B: setlocale (setlocale.c:337) ==102048== by 0x10904B: main (first.c:157) ==102048== ==102048== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102048== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102048== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102048== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102048== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102048== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102048== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102048== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102048== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102048== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102048== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102048== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102048== by 0x497836B: setlocale (setlocale.c:337) ==102048== by 0x10904B: main (first.c:157) ==102048== ==102048== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102048== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102048== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102048== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102048== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102048== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102048== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102048== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102048== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102048== by 0x497836B: setlocale (setlocale.c:337) ==102048== by 0x10904B: main (first.c:157) ==102048== ==102048== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102048== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102048== by 0x48DC163: Curl_open (url.c:510) ==102048== by 0x487CCEF: curl_easy_init (easy.c:368) ==102048== by 0x109345: once (lib643.c:76) ==102048== by 0x109095: UnknownInlinedFun (lib643.c:259) ==102048== by 0x109095: main (first.c:178) ==102048== ==102048== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102048== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102048== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102048== by 0x4A58EC8: tsearch (tsearch.c:290) ==102048== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102048== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102048== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102048== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102048== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102048== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102048== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102048== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102048== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102048== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102048== by 0x497836B: setlocale (setlocale.c:337) ==102048== by 0x10904B: main (first.c:157) ==102048== ==102048== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102048== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102048== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102048== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102048== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102048== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102048== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102048== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102048== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102048== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102048== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102048== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102048== by 0x497836B: setlocale (setlocale.c:337) ==102048== by 0x10904B: main (first.c:157) ==102048== === End of file valgrind643 startnew: perl -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 43679 startnew: child proceCMD (33792): ../libtool --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/valgrind645 ./libtest/lib645 http://127.0.0.1:36145/645 > log/10/stdout645 2> log/10/stderr645 ss has died, server might start up RUN: failed to start the SSH server on 43679 startnew: perl -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 37635 startnew: child process has died, server might start up RUN: failed to start the SSH server on 37635 startnew: perl -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 44749 startnew: child process has died, server might start up RUN: failed to start the SSH server on 44749 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/10/valgrind645 ./libtest/lib645 http://127.0.0.1:36145/645 > log/10/stdout645 2> log/10/stderr645 645: 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 645 === Start of file server.cmd Testnum 645 === End of file server.cmd === Start of file stderr645 URL: http://127.0.0.1:36145/645 === End of file stderr645 === Start of file valgrind645 ==102097== ==102097== Process terminating with default action of signal 4 (SIGILL) ==102097== Illegal opcode at address 0x48DC18B ==102097== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102097== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102097== by 0x48DC18B: Curl_open (url.c:519) ==102097== by 0x487CCEF: curl_easy_init (easy.c:368) ==102097== by 0x10933D: once (lib643.c:76) ==102097== by 0x109095: UnknownInlinedFun (lib643.c:259) ==102097== by 0x109095: main (first.c:178) ==102097== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102097== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102097== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102097== by 0x4A58EC8: tsearch (tsearch.c:290) ==102097== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102097== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102097== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102097== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102097== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102097== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102097== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102097== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102097== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102097== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102097== by 0x497836B: setlocale (setlocale.c:337) ==102097== by 0x10904B: main (first.c:157) ==102097== ==102097== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102097== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102097== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102097== by 0x4A58EC8: tsearch (tsearch.c:290) ==102097== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102097== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102097== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102097== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102097== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102097== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102097== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102097== by 0x497836B: setlocale (setlocale.c:337) ==102097== by 0x10904B: main (first.c:157) ==102097== ==102097== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102097== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102097== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102097== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102097== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102097== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102097== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102097== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102097== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102097== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102097== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102097== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102097== by 0x497836B: setlocale (setlocale.c:337) ==102097== by 0x10904B: main (first.c:157) ==102097== ==102097== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102097== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102097== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102097== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102097== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102097== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102097== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102097== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102097== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102097== by 0x497836B: setlocale (setlocale.c:337) ==102097== by 0x10904B: main (first.c:157) ==102097== ==102097== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102097== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102097== by 0x48DC163: Curl_open (url.c:510) ==102097== by 0x487CCEF: curl_easy_init (easy.c:368) ==102097== by 0x10933D: once (lib643.c:76) ==102097== by 0x109095: UnknownInlinedFun (lib643.c:259) ==102097== by 0x109095: main (first.c:178) ==102097== ==102097== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102097== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102097== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102097== by 0x4A58EC8: tsearch (tsearch.c:290) ==102097== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102097== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102097== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102097== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102097== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102097== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102097== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102097== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102097== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102097== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102097== by 0x497836B: setlocale (setlocale.c:337) ==102097== by 0x10904B: main (first.c:157) ==102097== ==102097== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102097== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102097== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102097== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102097== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102097== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102097== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102097== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102097== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102097== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102097== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102097== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102097== by 0x497836B: setlocale (setlocale.c:337) ==102097== by 0x10904B: main (first.c:157) ==102097== === End of file valgrind645 startnew: perl -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 36475CMD (33792): ../libtool --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/valgrind651 ./libtest/lib651 http://127.0.0.1:41583/651 log/6/test651.filedata log/6/stdout651 2> log/6/stderr651 startnew: child process has died, server might start up RUN: failed to start the SSH server on 36475 startnew: perl -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 37419 startnew: child process has died, server might start up RUN: failed to start the SSH server on 37419 startnew: perl -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 46001 startnew: child process has died, server might start up RUN: failed to start the SSH server on 46001 startnew: perl -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 34915 startnew: child process has died, server might start up RUN: failed to start the SSH server on 34915 startnew: perl -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 42923 startnew: child process has died, server might start up RUN: failed to start the SSH server on 42923 startnew: perl -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 38561 startnew: child process has died, server might start up RUN: failed to start the SSH server on 38561 startnew: perl -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 35323 startnew: child process has died, server might start up RUN: failed to start the SSH server on 35323 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/6/valgrind651 ./libtest/lib651 http://127.0.0.1:41583/651 log/6/test651.filedata log/6/stdout651 2> log/6/stderr651 651: 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 651 === Start of file server.cmd Testnum 651 === End of file server.cmd === Start of file stderr651 URL: http://127.0.0.1:41583/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 ==102204== ==102204== Process terminating with default action of signal 4 (SIGILL) ==102204== Illegal opcode at address 0x1090A8 ==102204== at 0x1090A8: UnknownInlinedFun (string_fortified.h:59) ==102204== by 0x1090A8: UnknownInlinedFun (lib651.c:44) ==102204== by 0x1090A8: main (first.c:178) ==102204== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==102204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102204== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102204== by 0x4A58EC8: tsearch (tsearch.c:290) ==102204== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102204== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102204== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102204== by 0x497836B: setlocale (setlocale.c:337) ==102204== by 0x109056: main (first.c:157) ==102204== ==102204== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==102204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102204== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102204== by 0x4A58EC8: tsearch (tsearch.c:290) ==102204== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102204== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102204== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102204== by 0x497836B: setlocale (setlocale.c:337) ==102204== by 0x109056: main (first.c:157) ==102204== ==102204== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==102204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102204== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102204== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102204== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102204== by 0x497836B: setlocale (setlocale.c:337) ==102204== by 0x109056: main (first.c:157) ==102204== ==102204== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==102204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102204== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102204== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102204== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102204== by 0x497836B: setlocale (setlocale.c:337) ==102204== by 0x109056: main (first.c:157) ==102204== ==102204== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==102204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102204== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102204== by 0x4A58EC8: tsearch (tsearch.c:290) ==102204== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102204== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102204== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102204== by 0x497836B: setlocale (setlocale.c:337) ==102204== by 0x109056: main (first.c:157) ==102204== ==102204== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==102204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102204== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parsecoCMD (33792): ../libtool --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/valgrind650 ./libtest/lib650 http://127.0.0.1:46313/650 log/3/test650.filedata log/3/stdout650 2> log/3/stderr650 nfdir.h:101) ==102204== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102204== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102204== by 0x497836B: setlocale (setlocale.c:337) ==102204== by 0x109056: main (first.c:157) ==102204== === End of file valgrind651 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/3/valgrind650 ./libtest/lib650 http://127.0.0.1:46313/650 log/3/test650.filedata log/3/stdout650 2> log/3/stderr650 650: 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 650 === Start of file server.cmd Testnum 650 === End of file server.cmd === Start of file stderr650 URL: http://127.0.0.1:46313/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 ==102154== ==102154== Process terminating with default action of signal 4 (SIGILL) ==102154== Illegal opcode at address 0x48A8D3D ==102154== at 0x48A8D3D: UnknownInlinedFun (string_fortified.h:59) ==102154== by 0x48A8D3D: curl_mime_init (mime.c:1293) ==102154== by 0x48867E8: Curl_getformdata.part.0 (formdata.c:829) ==102154== by 0x4886CA4: UnknownInlinedFun (formdata.c:826) ==102154== by 0x4886CA4: curl_formget (formdata.c:719) ==102154== by 0x109288: UnknownInlinedFun (lib650.c:152) ==102154== by 0x109288: main (first.c:178) ==102154== 96 bytes in 1 blocks are definitely lost in loss record 588 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x48A8D0F: curl_mime_init (mime.c:1286) ==102154== by 0x48867E8: Curl_getformdata.part.0 (formdata.c:829) ==102154== by 0x4886CA4: UnknownInlinedFun (formdata.c:826) ==102154== by 0x4886CA4: curl_formget (formdata.c:719) ==102154== by 0x109288: UnknownInlinedFun (lib650.c:152) ==102154== by 0x109288: main (first.c:178) ==102154== ==102154== 408 bytes in 17 blocks are possibly lost in loss record 621 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102154== by 0x4A58EC8: tsearch (tsearch.c:290) ==102154== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102154== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102154== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102154== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102154== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102154== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102154== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102154== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102154== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102154== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102154== by 0x497836B: setlocale (setlocale.c:337) ==102154== by 0x10905B: main (first.c:157) ==102154== ==102154== 552 bytes in 23 blocks are possibly lost in loss record 626 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102154== by 0x4A58EC8: tsearch (tsearch.c:290) ==102154== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102154== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102154== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102154== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102154== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102154== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102154== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102154== by 0x497836B: setlocale (setlocale.c:337) ==102154== by 0x10905B: main (first.c:157) ==102154== ==102154== 681 bytes in 17 blocks are possibly lost in loss record 632 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102154== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102154== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102154== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102154== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102154== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102154== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102154== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102154== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102154== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102154== by 0x497836B: setlocale (setlocale.c:337) ==102154== by 0x10905B: main (first.c:157) ==102154== ==102154== 1,018 bytes in 23 blocks are possibly lost in loss record 646 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102154== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102154== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102154== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102154== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102154== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102154== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102154== by 0x497836B: setlocale (setlocale.c:337) ==102154== by 0x10905B: main (first.c:157) ==102154== ==102154== 11,664 bytes in 486 blocks are possibly lost in loss record 667 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102154== by 0x4A58EC8: tsearch (tsearch.c:290) ==102154== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102154== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102154== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102154== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102154== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102154== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102154== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102154== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102154== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102154== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102154== by 0x497836B: setlocale (setlocale.c:337) ==102154== by 0x10905B: main (first.c:157) ==102154== ==102154== 18,800 bytes in 486 blocks are possibly lost in loss record 669 of 670 ==102154== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102154== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102154== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102154== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102154== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102154== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102154== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102154== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102154== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102154== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102154== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102154== by 0x497836B: setlocale (setlocale.c:337) ==102154== by 0x10905B: main (first.c:157) ==102154== === End 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/4/valgrind653 ./libtest/lib653 http://127.0.0.1:41947/653 > log/4/stdout653 2> log/4/stderr653 CMD (33792): ../libtool --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/valgrind655 ./libtest/lib655 http://127.0.0.1:39283/655 > log/1/stdout655 2> log/1/stderr655 grind650 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/4/valgrind653 ./libtest/lib653 http://127.0.0.1:41947/653 > log/4/stdout653 2> log/4/stderr653 653: 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 653 === Start of file server.cmd Testnum 653 === End of file server.cmd === Start of file stderr653 URL: http://127.0.0.1:41947/653 === End of file stderr653 === Start of file valgrind653 ==102256== ==102256== Process terminating with default action of signal 4 (SIGILL) ==102256== Illegal opcode at address 0x48DC18B ==102256== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102256== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102256== by 0x48DC18B: Curl_open (url.c:519) ==102256== by 0x487CCEF: curl_easy_init (easy.c:368) ==102256== by 0x109091: UnknownInlinedFun (lib653.c:39) ==102256== by 0x109091: UnknownInlinedFun (lib653.c:31) ==102256== by 0x109091: main (first.c:178) ==102256== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102256== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102256== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102256== by 0x4A58EC8: tsearch (tsearch.c:290) ==102256== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102256== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102256== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102256== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102256== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102256== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102256== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102256== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102256== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102256== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102256== by 0x497836B: setlocale (setlocale.c:337) ==102256== by 0x10904B: main (first.c:157) ==102256== ==102256== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102256== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102256== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102256== by 0x4A58EC8: tsearch (tsearch.c:290) ==102256== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102256== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102256== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102256== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102256== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102256== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102256== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102256== by 0x497836B: setlocale (setlocale.c:337) ==102256== by 0x10904B: main (first.c:157) ==102256== ==102256== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102256== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102256== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102256== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102256== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102256== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102256== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102256== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102256== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102256== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102256== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102256== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102256== by 0x497836B: setlocale (setlocale.c:337) ==102256== by 0x10904B: main (first.c:157) ==102256== ==102256== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102256== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102256== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102256== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102256== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102256== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102256== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102256== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102256== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102256== by 0x497836B: setlocale (setlocale.c:337) ==102256== by 0x10904B: main (first.c:157) ==102256== ==102256== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102256== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102256== by 0x48DC163: Curl_open (url.c:510) ==102256== by 0x487CCEF: curl_easy_init (easy.c:368) ==102256== by 0x109091: UnknownInlinedFun (lib653.c:39) ==102256== by 0x109091: UnknownInlinedFun (lib653.c:31) ==102256== by 0x109091: main (first.c:178) ==102256== ==102256== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102256== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102256== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102256== by 0x4A58EC8: tsearch (tsearch.c:290) ==102256== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102256== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102256== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102256== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102256== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102256== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102256== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102256== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102256== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102256== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102256== by 0x497836B: setlocale (setlocale.c:337) ==102256== by 0x10904B: main (first.c:157) ==102256== ==102256== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102256== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102256== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102256== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102256== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102256== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102256== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102256== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102256== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102256== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102256== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102256== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102256== by 0x497836B: setlocale (setlocale.c:337) ==102256== by 0x10904B: main (first.c:157) ==102256== === End of file valgrind653 CMD (33792): ../libtool --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/valgrind654 ./libtest/lib654 http://127.0.0.1:33791/654 log/8/file654.txt > log/8/stdout654 2> log/8/stderr654 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/1/valgrind655 ./libtest/lib655 http://127.0.0.1:39283/655 > log/1/stdout655 2> log/1/stderr655 655: data FAILED: --- log/1/check-expected 2024-05-23 11:16:38.050757352 +0200 +++ log/1/check-generated 2024-05-23 11:16:38.050757352 +0200 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/1/ dir after test 655 === Start of file check-expected hello[LF] === End of file check-expected === Start of file server.cmd Testnum 655 === End of file server.cmd === Start of file stderr655 URL: http://127.0.0.1:39283/655 === End of file stderr655 === Start of file valgrind655 ==102263== ==102263== Process terminating with default action of signal 4 (SIGILL) ==102263== Illegal opcode at address 0x48DC18B ==102263== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102263== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102263== by 0x48DC18B: Curl_open (url.c:519) ==102263== by 0x487CCEF: curl_easy_init (easy.c:368) ==102263== by 0x10908A: UnknownInlinedFun (lib655.c:70) ==102263== by 0x10908A: main (first.c:178) ==102263== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102263== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102263== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102263== by 0x4A58EC8: tsearch (tsearch.c:290) ==102263== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102263== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102263== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102263== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102263== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102263== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102263== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102263== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102263== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102263== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102263== by 0x497836B: setlocale (setlocale.c:337) ==102263== by 0x109047: main (first.c:157) ==102263== ==102263== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102263== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102263== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102263== by 0x4A58EC8: tsearch (tsearch.c:290) ==102263== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102263== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102263== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102263== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102263== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102263== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102263== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102263== by 0x497836B: setlocale (setlocale.c:337) ==102263== by 0x109047: main (first.c:157) ==102263== ==102263== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102263== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102263== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102263== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102263== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102263== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102263== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102263== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102263== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102263== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102263== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102263== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102263== by 0x497836B: setlocale (setlocale.c:337) ==102263== by 0x109047: main (first.c:157) ==102263== ==102263== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102263== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102263== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102263== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102263== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102263== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102263== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102263== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102263== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102263== by 0x497836B: setlocale (setlocale.c:337) ==102263== by 0x109047: main (first.c:157) ==102263== ==102263== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102263== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102263== by 0x48DC163: Curl_open (url.c:510) ==102263== by 0x487CCEF: curl_easy_init (easy.c:368) ==102263== by 0x10908A: UnknownInlinedFun (lib655.c:70) ==102263== by 0x10908A: main (first.c:178) ==102263== ==102263== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102263== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102263== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102263== by 0x4A58EC8: tsearch (tsearch.c:290) ==102263== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102263== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102263== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102263== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102263== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102263== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102263== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102263== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102263== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102263== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102263== by 0x497836B: setlocale (setlocale.c:337) ==102263== by 0x109047: main (first.c:157) ==102263== ==102263== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102263== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102263== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102263== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102263== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102263== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102263== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102263== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102263== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102263== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102263== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102263== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102263== by 0x497836B: setlocale (setlocale.c:337) ==102263== by 0x109047: main (first.c:157) ==102263== === End of file valgrind655 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/8/valgrind654 ./libtest/lib654 http://127.0.0.1:33791/654 log/8/file654.txt > log/8/stdout654 2> log/8/stderr654 654: 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 654 === Start of file file654.txt This is data from a file === End of file file654.txt === Start of file server.cmd Testnum 654 === End of file server.cmd === Start of file stderr654 URL: http://127.0.0.1:33791/654 === End of file stderr654 === Start of file valgrind654 ==102265== ==102265== Process terminating with default action of signal 4 (SIGILL) ==102265== Illegal opcode at address 0x48DC18B ==102265==CMD (33792): ../libtool --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/valgrind646 ../src/curl -q --output log/12/curl646.out --include --trace-ascii log/12/trace646 --trace-time smtp://127.0.0.1:39987/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/12/headers646" -F "=)" -F "=@log/12/test646.txt;headers=" log/12/stdout646 2> log/12/stderr646 at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102265== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102265== by 0x48DC18B: Curl_open (url.c:519) ==102265== by 0x487CCEF: curl_easy_init (easy.c:368) ==102265== by 0x1090AD: UnknownInlinedFun (lib654.c:85) ==102265== by 0x1090AD: main (first.c:178) ==102265== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102265== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102265== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102265== by 0x4A58EC8: tsearch (tsearch.c:290) ==102265== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102265== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102265== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102265== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102265== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102265== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102265== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102265== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102265== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102265== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102265== by 0x497836B: setlocale (setlocale.c:337) ==102265== by 0x109058: main (first.c:157) ==102265== ==102265== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102265== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102265== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102265== by 0x4A58EC8: tsearch (tsearch.c:290) ==102265== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102265== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102265== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102265== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102265== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102265== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102265== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102265== by 0x497836B: setlocale (setlocale.c:337) ==102265== by 0x109058: main (first.c:157) ==102265== ==102265== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102265== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102265== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102265== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102265== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102265== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102265== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102265== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102265== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102265== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102265== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102265== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102265== by 0x497836B: setlocale (setlocale.c:337) ==102265== by 0x109058: main (first.c:157) ==102265== ==102265== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102265== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102265== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102265== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102265== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102265== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102265== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102265== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102265== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102265== by 0x497836B: setlocale (setlocale.c:337) ==102265== by 0x109058: main (first.c:157) ==102265== ==102265== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102265== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102265== by 0x48DC163: Curl_open (url.c:510) ==102265== by 0x487CCEF: curl_easy_init (easy.c:368) ==102265== by 0x1090AD: UnknownInlinedFun (lib654.c:85) ==102265== by 0x1090AD: main (first.c:178) ==102265== ==102265== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102265== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102265== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102265== by 0x4A58EC8: tsearch (tsearch.c:290) ==102265== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102265== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102265== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102265== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102265== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102265== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102265== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102265== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102265== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102265== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102265== by 0x497836B: setlocale (setlocale.c:337) ==102265== by 0x109058: main (first.c:157) ==102265== ==102265== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102265== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102265== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102265== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102265== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102265== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102265== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102265== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102265== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102265== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102265== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102265== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102265== by 0x497836B: setlocale (setlocale.c:337) ==102265== by 0x109058: main (first.c:157) ==102265== === End of file valgrind654 startnew: perl -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 39987 (log/12/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:39987/verifiedserver" 2>log/12/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 102145 port 39987 * pid smtp => 102145 102145 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/12/valgrind646 ../src/curl -q --output log/12/curl646.out --include --trace-ascii log/12/trace646 --trace-time smtp://127.0.0.1:39987/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/12/headers646" -F "=)" -F "=@log/12/test646.txt;headers=" log/12/stdout646 2> log/12/stderr646 646: 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 646 === 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 heCMD (33792): ../libtool --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/valgrind648 ../src/curl -q --output log/9/curl648.out --include --trace-ascii log/9/trace648 --trace-time smtp://127.0.0.1:39915/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/9/test648.txt;encoder=base64" -H "From: different" -H "To: another" log/9/stdout648 2> log/9/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/10/valgrind649 ../src/curl -q --output log/10/curl649.out --include --trace-ascii log/10/trace649 --trace-time smtp://127.0.0.1:43001/649 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is valid;encoder=7bit' -F "=@log/10/test649.txt;encoder=7bit" -H "From: different" -H "To: another" log/10/stdout649 2> log/10/stderr649 CMD (33792): ../libtool --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/valgrind658 ./libtest/lib658 http://127.0.0.1:35843/658 > log/11/stdout658 2> log/11/stderr658 aders646 === Start of file server.cmd Testnum 646 === End of file server.cmd === Start of file smtp_server.log 11:16:36.688561 SMTP server listens on port IPv4/39987 11:16:36.688623 logged pid 102145 in log/12/server/smtp_server.pid 11:16:36.688641 Awaiting input 11:16:37.682318 ====> Client connect 11:16:37.682456 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:37.682697 < "EHLO verifiedserver" 11:16:37.682733 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:37.682856 < "HELP" 11:16:37.682878 > "214 WE ROOLZ: 102145[CR][LF]" 11:16:37.682890 return proof we are we 11:16:37.683065 < "QUIT" 11:16:37.683090 > "221 curl ESMTP server signing off[CR][LF]" 11:16:37.683257 MAIN sockfilt said DISC 11:16:37.683278 ====> Client disconnected 11:16:37.683316 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:36.205686 Running IPv4 version 11:16:36.205759 Listening on port 39987 11:16:36.205784 Wrote pid 102146 to log/12/server/smtp_sockfilt.pid 11:16:36.205804 Wrote port 39987 to log/12/server/smtp_server.port 11:16:36.205817 Received PING (on stdin) 11:16:37.199572 ====> Client connect 11:16:37.199786 Received DATA (on stdin) 11:16:37.199796 > 160 bytes data, server => client 11:16:37.199805 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:37.199814 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:37.199822 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:37.199888 < 21 bytes data, client => server 11:16:37.199896 'EHLO verifiedserver\r\n' 11:16:37.200059 Received DATA (on stdin) 11:16:37.200068 > 53 bytes data, server => client 11:16:37.200076 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:37.200120 < 6 bytes data, client => server 11:16:37.200127 'HELP\r\n' 11:16:37.200213 Received DATA (on stdin) 11:16:37.200221 > 22 bytes data, server => client 11:16:37.200229 '214 WE ROOLZ: 102145\r\n' 11:16:37.200304 < 6 bytes data, client => server 11:16:37.200312 'QUIT\r\n' 11:16:37.200414 Received DATA (on stdin) 11:16:37.200424 > 35 bytes data, server => client 11:16:37.200432 '221 curl ESMTP server signing off\r\n' 11:16:37.200542 ====> Client disconnect 11:16:37.200639 Received ACKD (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 ==102513== ==102513== Process terminating with default action of signal 4 (SIGILL) ==102513== Illegal opcode at address 0x10B06D ==102513== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==102513== by 0x10B06D: main (tool_main.c:234) === End of file valgrind646 startnew: perl -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 39915 (log/9/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:39915/verifiedserver" 2>log/9/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 102149 port 39915 * pid smtp => 102149 102149 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/9/valgrind648 ../src/curl -q --output log/9/curl648.out --include --trace-ascii log/9/trace648 --trace-time smtp://127.0.0.1:39915/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/9/test648.txt;encoder=base64" -H "From: different" -H "To: another" log/9/stdout648 2> log/9/stderr648 648: 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 648 === Start of file server.cmd Testnum 648 === End of file server.cmd === Start of file smtp_server.log 11:16:36.795510 SMTP server listens on port IPv4/39915 11:16:36.795581 logged pid 102149 in log/9/server/smtp_server.pid 11:16:36.795598 Awaiting input 11:16:37.793678 ====> Client connect 11:16:37.793831 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:37.794073 < "EHLO verifiedserver" 11:16:37.794110 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:37.794233 < "HELP" 11:16:37.794259 > "214 WE ROOLZ: 102149[CR][LF]" 11:16:37.794271 return proof we are we 11:16:37.794444 < "QUIT" 11:16:37.794464 > "221 curl ESMTP server signing off[CR][LF]" 11:16:37.795101 MAIN sockfilt said DISC 11:16:37.795124 ====> Client disconnected 11:16:37.795163 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:36.312613 Running IPv4 version 11:16:36.312691 Listening on port 39915 11:16:36.312727 Wrote pid 102150 to log/9/server/smtp_sockfilt.pid 11:16:36.312749 Wrote port 39915 to log/9/server/smtp_server.port 11:16:36.312762 Received PING (on stdin) 11:16:37.310925 ====> Client connect 11:16:37.311162 Received DATA (on stdin) 11:16:37.311171 > 160 bytes data, server => client 11:16:37.311180 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:37.311188 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:37.311196 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:37.311262 < 21 bytes data, client => server 11:16:37.311270 'EHLO verifiedserver\r\n' 11:16:37.311436 Received DATA (on stdin) 11:16:37.311444 > 53 bytes data, server => client 11:16:37.311453 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:37.311497 < 6 bytes data, client => server 11:16:37.311504 'HELP\r\n' 11:16:37.311594 Received DATA (on stdin) 11:16:37.311602 > 22 bytes data, server => client 11:16:37.311610 '214 WE ROOLZ: 102149\r\n' 11:16:37.311704 < 6 bytes data, client => server 11:16:37.311713 'QUIT\r\n' 11:16:37.311787 Received DATA (on stdin) 11:16:37.311795 > 35 bytes data, server => client 11:16:37.311803 '221 curl ESMTP server signing off\r\n' 11:16:37.312383 ====> Client disconnect 11:16:37.312488 Received ACKD (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 ==102604== ==102604== Process terminating with default action of signal 4 (SIGILL) ==102604== Illegal opcode at address 0x10B06D ==102604== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==102604== by 0x10B06D: main (tool_main.c:234) === End of file valgrind648 startnew: perl -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 43001 (log/10/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:43001/verifiedserver" 2>log/10/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 102151 port 43001 * pid smtp => 102151 102151 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/10/valgrind649 ../src/curl -q --output log/10/curl649.out --include --trace-ascii log/10/trace649 --trace-time smtp://127.0.0.1:43001/649 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is valid;encoder=7bit' -F "=@log/10/test649.txt;encoder=7bit" -H "From: different" -H "To: another" log/10/stdout649 2> log/10/stderr649 649: 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 649 === Start of file server.cmd Testnum 649 === End of file server.cmd === Start of file smtp_server.log 11:16:36.832674 SMTP server listens on port IPv4/43001 11:16:36.832735 logged pid 102151 in log/10/server/smtp_server.pid 11:16:36.832753 Awaiting input 11:16:37.829221 ====> Client connect 11:16:37.829472 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:37.829731 < "EHLO verifiedserver" 11:16:37.829773 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:37.829911 < "HELP" 11:16:37.829939 > "214 WE ROOLZ: 102151[CR][LF]" 11:16:37.829952 return proof we are we 11:16:37.830074 < "QUIT" 11:16:37.830094 > "221 curl ESMTP server signing off[CR][LF]" 11:16:37.830224 MAIN sockfilt said DISC 11:16:37.830247 ====> Client disconnected 11:16:37.830287 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:36.349803 Running IPv4 version 11:16:36.349874 Listening on port 43001 11:16:36.349900 Wrote pid 102152 to log/10/server/smtp_sockfilt.pid 11:16:36.349919 Wrote port 43001 to log/10/server/smtp_server.port 11:16:36.349931 Received PING (on stdin) 11:16:37.346423 ====> Client connect 11:16:37.346806 Received DATA (on stdin) 11:16:37.346816 > 160 bytes data, server => client 11:16:37.346825 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:37.346833 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:37.346840 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:37.346905 < 21 bytes data, client => server 11:16:37.346920 'EHLO verifiedserver\r\n' 11:16:37.347100 Received DATA (on stdin) 11:16:37.347109 > 53 bytes data, server => client 11:16:37.347117 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:37.347169 < 6 bytes data, client => server 11:16:37.347177 'HELP\r\n' 11:16:37.347249 Received DATA (on stdin) 11:16:37.347256 > 22 bytes data, server => client 11:16:37.347263 '214 WE ROOLZ: 102151\r\n' 11:16:37.347341 < 6 bytes data, client => server 11:16:37.347350 'QUIT\r\n' 11:16:37.347416 Received DATA (on stdin) 11:16:37.347426 > 35 bytes data, server => client 11:16:37.347434 '221 curl ESMTP server signing off\r\n' 11:16:37.347506 ====> Client disconnect 11:16:37.347602 Received ACKD (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 ==102671== ==102671== Process terminating with default action of signal 4 (SIGILL) ==102671== Illegal opcode at address 0x10B06D ==102671== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==102671== by 0x10B06D: main (tool_main.c:234) === End of file valgrind649 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/11/valgrind658 ./libtest/lib658 http://127.0.0.1:35843/658 > log/11/stdout658 2> log/11/stderr658 658: 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 658 === Start of file server.cmd Testnum 658 === End of file server.cmd === Start of file stderr658 URL: http://127.0.0.1:35843/658 === End of file stderr658 === Start of file valgrind658 ==102402== ==102402== Process terminating with default action of signal 4 (SIGILL) ==102402== Illegal opcode at address 0x48DC18B ==102402== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102402== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102402== by 0x48DC18B: Curl_open (url.c:519) ==102402== by 0x487CCEF: curl_easy_init (easy.c:368) ==102402== by 0x109091: UnknownInlinedFun (lib658.c:42) ==102402== by 0x109091: UnknownInlinedFun (lib658.c:34) ==102402== by 0x109091: main (first.c:178) ==102402== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102402== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102402== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102402== by 0x4A58EC8: tsearch (tsearch.c:290) ==102402== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102402== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102402== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102402== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102402== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102402== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102402== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102402== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102402== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102402== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102402== by 0x497836B: setlocale (setlocale.c:337) ==102402== by 0x10904B: main (first.c:157) ==102402== ==102402== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102402== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102402== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102402== by 0x4A58EC8: tsearch (tsearch.c:290) ==102402== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102402== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102402== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102402== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102402== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102402== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102402== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102402== by 0x497836B: setlocale (setlocale.c:337) ==102402== by 0x10904B: main (first.c:157) ==102402== ==102402== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102402== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102402== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102402== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102402== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102402== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102402== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102402== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102402== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102402== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102402== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102402== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102402== by 0x497836B: setlocale (setlocale.c:337) ==102402== by 0x10904B: main (first.c:157) ==102402== ==102402== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102402== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102402== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102402== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102402== by 0x49CMD (33792): ../libtool --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/valgrind647 ../src/curl -q --output log/7/curl647.out --include --trace-ascii log/7/trace647 --trace-time imap://127.0.0.1:39443/647 -F "=(;type=multipart/alternative" -F "= This is the html version;type=text/html" -F "=This is the plain text version" -F "=)" -F "=@log/7/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/7/stdout647 2> log/7/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/6/valgrind659 ./libtest/lib659 http://127.0.0.1:41583 > log/6/stdout659 2> log/6/stderr659 6CD13: __gconv_read_conf (gconv_conf.c:508) ==102402== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102402== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102402== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102402== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102402== by 0x497836B: setlocale (setlocale.c:337) ==102402== by 0x10904B: main (first.c:157) ==102402== ==102402== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102402== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102402== by 0x48DC163: Curl_open (url.c:510) ==102402== by 0x487CCEF: curl_easy_init (easy.c:368) ==102402== by 0x109091: UnknownInlinedFun (lib658.c:42) ==102402== by 0x109091: UnknownInlinedFun (lib658.c:34) ==102402== by 0x109091: main (first.c:178) ==102402== ==102402== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102402== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102402== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102402== by 0x4A58EC8: tsearch (tsearch.c:290) ==102402== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102402== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102402== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102402== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102402== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102402== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102402== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102402== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102402== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102402== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102402== by 0x497836B: setlocale (setlocale.c:337) ==102402== by 0x10904B: main (first.c:157) ==102402== ==102402== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102402== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102402== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102402== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102402== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102402== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102402== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102402== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102402== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102402== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102402== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102402== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102402== by 0x497836B: setlocale (setlocale.c:337) ==102402== by 0x10904B: main (first.c:157) ==102402== === End of file valgrind658 startnew: perl -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 39443 (log/7/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:39443/verifiedserver" 2>log/7/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 102147 port 39443 * pid imap => 102147 102147 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/7/valgrind647 ../src/curl -q --output log/7/curl647.out --include --trace-ascii log/7/trace647 --trace-time imap://127.0.0.1:39443/647 -F "=(;type=multipart/alternative" -F "= This is the html version;type=text/html" -F "=This is the plain text version" -F "=)" -F "=@log/7/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/7/stdout647 2> log/7/stderr647 647: 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 647 === Start of file imap_server.log 11:16:36.770409 IMAP server listens on port IPv4/39443 11:16:36.770471 logged pid 102147 in log/7/server/imap_server.pid 11:16:36.770490 Awaiting input 11:16:37.766265 ====> Client connect 11:16:37.766421 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:37.766679 < "A001 CAPABILITY" 11:16:37.766709 > "A001 BAD Command[CR][LF]" 11:16:37.766836 < "A002 LIST "verifiedserver" *" 11:16:37.766861 LIST_imap got "verifiedserver" * 11:16:37.766881 > "* LIST () "/" "WE ROOLZ: 102147"[CR][LF]" 11:16:37.766895 > "A002 OK LIST Completed[CR][LF]" 11:16:37.766905 return proof we are we 11:16:37.812396 < "A003 LOGOUT" 11:16:37.812449 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:37.812463 > "A003 OK LOGOUT completed[CR][LF]" 11:16:37.859055 MAIN sockfilt said DISC 11:16:37.859115 ====> Client disconnected 11:16:37.859166 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:36.287535 Running IPv4 version 11:16:36.287600 Listening on port 39443 11:16:36.287628 Wrote pid 102148 to log/7/server/imap_sockfilt.pid 11:16:36.287648 Wrote port 39443 to log/7/server/imap_server.port 11:16:36.287661 Received PING (on stdin) 11:16:37.283511 ====> Client connect 11:16:37.283752 Received DATA (on stdin) 11:16:37.283762 > 178 bytes data, server => client 11:16:37.283771 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:37.283779 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:37.283787 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:37.283794 'rve\r\n' 11:16:37.283861 < 17 bytes data, client => server 11:16:37.283869 'A001 CAPABILITY\r\n' 11:16:37.284035 Received DATA (on stdin) 11:16:37.284044 > 18 bytes data, server => client 11:16:37.284051 'A001 BAD Command\r\n' 11:16:37.284097 < 30 bytes data, client => server 11:16:37.284105 'A002 LIST "verifiedserver" *\r\n' 11:16:37.284227 Received DATA (on stdin) 11:16:37.284235 > 34 bytes data, server => client 11:16:37.284242 '* LIST () "/" "WE ROOLZ: 102147"\r\n' 11:16:37.284259 Received DATA (on stdin) 11:16:37.284266 > 24 bytes data, server => client 11:16:37.284273 'A002 OK LIST Completed\r\n' 11:16:37.329563 < 13 bytes data, client => server 11:16:37.329589 'A003 LOGOUT\r\n' 11:16:37.329790 Received DATA (on stdin) 11:16:37.329801 > 36 bytes data, server => client 11:16:37.329810 '* BYE curl IMAP server signing off\r\n' 11:16:37.329833 Received DATA (on stdin) 11:16:37.329841 > 26 bytes data, server => client 11:16:37.329849 'A003 OK LOGOUT completed\r\n' 11:16:37.376303 ====> Client disconnect 11:16:37.376493 Received ACKD (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 ==102728== ==102728== Process terminating with default action of signal 4 (SIGILL) ==102728== Illegal opcode at address 0x10B06D ==102728== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==102728== by 0x10B06D: main (tool_main.c:234) === End of file valgrind647 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/6/valgrind659 ./libtest/lib659 http://127.0.0.1:41583 > log/6/stdout659 2> log/6/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/8/valgrind663 ../src/curl -q --output log/8/curl663.out --include --trace-ascii log/8/trace663 --trace-time http://example.com/please/../gimme/663?foobar#hello -L -x http://127.0.0.1:33791 > log/8/stdout663 2> log/8/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/1/valgrind662 ../src/curl -q --output log/1/curl662.out --include --trace-ascii log/1/trace662 --trace-time http://example.com/please/gimme/662 -L -x http://127.0.0.1:39283 > log/1/stdout662 2> log/1/stderr662 derr659 659: 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 659 === Start of file server.cmd Testnum 659 === End of file server.cmd === Start of file stderr659 URL: http://127.0.0.1:41583 === End of file stderr659 === Start of file valgrind659 ==102448== ==102448== Process terminating with default action of signal 4 (SIGILL) ==102448== Illegal opcode at address 0x48DC18B ==102448== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102448== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102448== by 0x48DC18B: Curl_open (url.c:519) ==102448== by 0x487CCEF: curl_easy_init (easy.c:368) ==102448== by 0x109091: UnknownInlinedFun (lib659.c:41) ==102448== by 0x109091: UnknownInlinedFun (lib659.c:34) ==102448== by 0x109091: main (first.c:178) ==102448== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102448== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102448== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102448== by 0x4A58EC8: tsearch (tsearch.c:290) ==102448== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102448== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102448== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102448== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102448== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102448== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102448== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102448== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102448== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102448== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102448== by 0x497836B: setlocale (setlocale.c:337) ==102448== by 0x10904B: main (first.c:157) ==102448== ==102448== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102448== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102448== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102448== by 0x4A58EC8: tsearch (tsearch.c:290) ==102448== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102448== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102448== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102448== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102448== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102448== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102448== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102448== by 0x497836B: setlocale (setlocale.c:337) ==102448== by 0x10904B: main (first.c:157) ==102448== ==102448== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102448== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102448== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102448== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102448== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102448== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102448== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102448== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102448== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102448== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102448== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102448== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102448== by 0x497836B: setlocale (setlocale.c:337) ==102448== by 0x10904B: main (first.c:157) ==102448== ==102448== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102448== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102448== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102448== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102448== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102448== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102448== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102448== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102448== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102448== by 0x497836B: setlocale (setlocale.c:337) ==102448== by 0x10904B: main (first.c:157) ==102448== ==102448== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102448== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102448== by 0x48DC163: Curl_open (url.c:510) ==102448== by 0x487CCEF: curl_easy_init (easy.c:368) ==102448== by 0x109091: UnknownInlinedFun (lib659.c:41) ==102448== by 0x109091: UnknownInlinedFun (lib659.c:34) ==102448== by 0x109091: main (first.c:178) ==102448== ==102448== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102448== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102448== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102448== by 0x4A58EC8: tsearch (tsearch.c:290) ==102448== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102448== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102448== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102448== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102448== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102448== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102448== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102448== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102448== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102448== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102448== by 0x497836B: setlocale (setlocale.c:337) ==102448== by 0x10904B: main (first.c:157) ==102448== ==102448== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102448== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102448== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102448== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102448== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102448== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102448== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102448== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102448== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102448== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102448== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102448== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102448== by 0x497836B: setlocale (setlocale.c:337) ==102448== by 0x10904B: main (first.c:157) ==102448== === End of file valgrind659 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/8/valgrind663 ../src/curl -q --output log/8/curl663.out --include --trace-ascii log/8/trace663 --trace-time http://example.com/please/../gimme/663?foobar#hello -L -x http://127.0.0.1:33791 > log/8/stdout663 2> log/8/stderr663 663: 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 663 === Start of file server.cmd Testnum 663 === End of file server.cmd === Start of file valgrind663 ==102817== ==102817== Process terminating with default action of signal 4 (SIGILL) ==102817== Illegal opcode at address 0x10B06D ==102817== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==102817== by 0x10B06D: main (tool_main.c:234) === End of file valgrind663 test 0662...[HTTP redirect with whitespace in absolute Location: URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/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/11/valgrind669 ../src/curl -q --output log/11/curl669.out --include --trace-ascii log/11/trace669 --trace-time http://127.0.0.1:35843/we/want/669 -H 'Content-type: multipart/form-data; charset=utf-8' -F name=daniel -F tool=curl > log/11/stdout669 2> log/11/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/4/valgrind661 ./libtest/lib661 ftp://127.0.0.1:36137/ > log/4/stdout661 2> log/4/stderr661 rc/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind662 ../src/curl -q --output log/1/curl662.out --include --trace-ascii log/1/trace662 --trace-time http://example.com/please/gimme/662 -L -x http://127.0.0.1:39283 > log/1/stdout662 2> log/1/stderr662 662: 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 662 === Start of file server.cmd Testnum 662 === End of file server.cmd === Start of file valgrind662 ==102807== ==102807== Process terminating with default action of signal 4 (SIGILL) ==102807== Illegal opcode at address 0x10B06D ==102807== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==102807== by 0x10B06D: main (tool_main.c:234) === End of file valgrind662 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/11/valgrind669 ../src/curl -q --output log/11/curl669.out --include --trace-ascii log/11/trace669 --trace-time http://127.0.0.1:35843/we/want/669 -H 'Content-type: multipart/form-data; charset=utf-8' -F name=daniel -F tool=curl > log/11/stdout669 2> log/11/stderr669 669: 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 669 === Start of file server.cmd Testnum 669 === End of file server.cmd === Start of file valgrind669 ==103061== ==103061== Process terminating with default action of signal 4 (SIGILL) ==103061== Illegal opcode at address 0x10B06D ==103061== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103061== by 0x10B06D: main (tool_main.c:234) === End of file valgrind669 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/4/valgrind661 ./libtest/lib661 ftp://127.0.0.1:36137/ > log/4/stdout661 2> log/4/stderr661 661: 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 661 === Start of file server.cmd Testnum 661 === End of file server.cmd === Start of file stderr661 URL: ftp://127.0.0.1:36137/ === End of file stderr661 === Start of file valgrind661 ==102795== ==102795== Process terminating with default action of signal 4 (SIGILL) ==102795== Illegal opcode at address 0x48DC18B ==102795== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102795== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102795== by 0x48DC18B: Curl_open (url.c:519) ==102795== by 0x487CCEF: curl_easy_init (easy.c:368) ==102795== by 0x10908E: UnknownInlinedFun (lib661.c:39) ==102795== by 0x10908E: main (first.c:178) ==102795== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102795== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102795== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102795== by 0x4A58EC8: tsearch (tsearch.c:290) ==102795== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102795== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102795== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102795== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102795== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102795== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102795== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102795== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102795== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102795== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102795== by 0x497836B: setlocale (setlocale.c:337) ==102795== by 0x10904B: main (first.c:157) ==102795== ==102795== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102795== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102795== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102795== by 0x4A58EC8: tsearch (tsearch.c:290) ==102795== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102795== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102795== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102795== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102795== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102795== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102795== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102795== by 0x497836B: setlocale (setlocale.c:337) ==102795== by 0x10904B: main (first.c:157) ==102795== ==102795== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102795== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102795== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102795== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102795== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102795== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102795== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102795== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102795== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102795== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102795== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102795== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102795== by 0x497836B: setlocale (setlocale.c:337) ==102795== by 0x10904B: main (first.c:157) ==102795== ==102795== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102795== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102795== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102795== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102795== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102795== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102795== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102795== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102795== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102795== by 0x497836B: setlocale (setlocale.c:337) ==102795== by 0x10904B: main (first.c:157) ==102795== ==102795== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102795== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102795== by 0x48DC163: Curl_open (url.c:510) ==102795== by 0x487CCEF: curl_easy_init (easy.c:368) ==102795== by 0x10908E: UnknownInlinedFun (lib661.c:39) ==102795== by 0x10908E: main (first.c:178) ==102795== ==102795== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102795== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102795== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102795== by 0x4A58EC8: tsearch (tsearch.c:290) ==102795== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102795== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102795== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102795== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102795== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102795== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102795== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102795== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102795== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102795== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102795== by 0x497836B: setlocale (setlocale.c:337) ==102795== by 0x10904B: main (first.c:157) ==102795== ==102795== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102795== at 0x4842788: malloc (vg_replace_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/12/valgrind666 ./libtest/lib666 http://127.0.0.1:44175/666 > log/12/stdout666 2> log/12/stderr666 CMD (33792): ../libtool --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/valgrind652 ./libtest/lib652 smtp://127.0.0.1:35685/652 > log/2/stdout652 2> log/2/stderr652 alloc.c:446) ==102795== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102795== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102795== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102795== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102795== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102795== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102795== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102795== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102795== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102795== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102795== by 0x497836B: setlocale (setlocale.c:337) ==102795== by 0x10904B: main (first.c:157) ==102795== === End of file valgrind661 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/12/valgrind666 ./libtest/lib666 http://127.0.0.1:44175/666 > log/12/stdout666 2> log/12/stderr666 666: 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 666 === Start of file server.cmd Testnum 666 === End of file server.cmd === Start of file stderr666 URL: http://127.0.0.1:44175/666 === End of file stderr666 === Start of file valgrind666 ==102956== ==102956== Process terminating with default action of signal 4 (SIGILL) ==102956== Illegal opcode at address 0x48DC18B ==102956== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==102956== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==102956== by 0x48DC18B: Curl_open (url.c:519) ==102956== by 0x487CCEF: curl_easy_init (easy.c:368) ==102956== by 0x10910B: UnknownInlinedFun (lib666.c:52) ==102956== by 0x10910B: main (first.c:178) ==102956== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==102956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102956== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102956== by 0x4A58EC8: tsearch (tsearch.c:290) ==102956== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102956== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102956== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102956== by 0x497836B: setlocale (setlocale.c:337) ==102956== by 0x10904C: main (first.c:157) ==102956== ==102956== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==102956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102956== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102956== by 0x4A58EC8: tsearch (tsearch.c:290) ==102956== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102956== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102956== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102956== by 0x497836B: setlocale (setlocale.c:337) ==102956== by 0x10904C: main (first.c:157) ==102956== ==102956== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==102956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102956== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102956== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102956== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==102956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102956== by 0x497836B: setlocale (setlocale.c:337) ==102956== by 0x10904C: main (first.c:157) ==102956== ==102956== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==102956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102956== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102956== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==102956== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==102956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102956== by 0x497836B: setlocale (setlocale.c:337) ==102956== by 0x10904C: main (first.c:157) ==102956== ==102956== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==102956== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==102956== by 0x48DC163: Curl_open (url.c:510) ==102956== by 0x487CCEF: curl_easy_init (easy.c:368) ==102956== by 0x10910B: UnknownInlinedFun (lib666.c:52) ==102956== by 0x10910B: main (first.c:178) ==102956== ==102956== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==102956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102956== by 0x4A58EC8: __tsearch (tsearch.c:337) ==102956== by 0x4A58EC8: tsearch (tsearch.c:290) ==102956== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==102956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102956== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102956== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102956== by 0x497836B: setlocale (setlocale.c:337) ==102956== by 0x10904C: main (first.c:157) ==102956== ==102956== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==102956== at 0x4842788: malloc (vg_replace_malloc.c:446) ==102956== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==102956== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==102956== by 0x496C9A2: add_alias (gconv_conf.c:178) ==102956== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102956== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102956== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==102956== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102956== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102956== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==102956== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==102956== by 0x497836B: setlocale (setlocale.c:337) ==102956== by 0x10904C: main (first.c:157) ==102956== === End of file valgrind666 startnew: perl -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 35685 (log/2/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:35685/verifiedserver" 2>log/2/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 102207 port 35685 * pid smtp => 102207 102207 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/2/valgrind652 ./libtest/lib652 smtp://127.0.0.1:35685/652 > log/2/stdout652 2> log/2/stderr652 652: 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 652 === Start of file server.cmd Testnum 652 === End of file server.cmd === Start of file smtp_server.log 11:16:37.206864 SMTP server listens on port IPv4/35685 11:16:37.206929 logged pid 102207 in log/2/server/smtp_server.pid 11:16:37.206947 Awaiting input 11:16:38.203851 ====> Client connect 11:16:38.203997 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:38.204228 < "EHLO verifiedserver" 11:16:38.204263 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:38.204386 < "HELP" 11:16:38.204409 > "214 WE ROOLZ: 102207[CR][LF]" 11:16:38.204421 return proof we are we 11:16:38.204586 < "QUIT" 11:16:38.204606 > "221 curl ESMTP server signing off[CR][LF]" 11:16:38.205177 MAIN sockfilt said DISC 11:16:38.205200 ====> Client disconnected 11:16:38.205236 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:37.723995 Running IPv4 version 11:16:37.724059 Listening on port 35685 11:16:37.724086 Wrote pid 102251 to log/2/server/smtp_sockfilt.pid 11:16:37.724105 Wrote port 35685 to log/2/server/smtp_server.port 11:16:37.724119 Received PING (on stdin) 11:16:38.721105 ====> Client connect 11:16:38.721326 Received DATA (on stdin) 11:16:38.721335 > 160 bytes data, server => client 11:16:38.721344 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:38.721354 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:38.721364 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:38.721423 < 21 bytes data, client => server 11:16:38.721431 'EHLO verifiedserver\r\n' 11:16:38.721588 Received DATA (on stdin) 11:16:38.721596 > 53 bytes data, server => client 11:16:38.721604 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:38.721648 < 6 bytes data, client => server 11:16:38.721656 'HELP\r\n' 11:16:38.721743 Received DATA (on stdin) 11:16:38.721750 > 22 bytes data, server => client 11:16:38.721757 '214 WE ROOLZ: 102207\r\n' 11:16:38.721848 < 6 bytes data, client => server 11:16:38.721857 'QUIT\r\n' 11:16:38.721928 Received DATA (on stdin) 11:16:38.721936 > 35 bytes data, server => client 11:16:38.721943 '221 curl ESMTP server signing off\r\n' 11:16:38.722463 ====> Client disconnect 11:16:38.722560 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stderr652 URL: smtp://127.0.0.1:35685/652 === End of file stderr652 === Start of file valgrind652 ==103000== ==103000== Process terminating with default action of signal 4 (SIGILL) ==103000== Illegal opcode at address 0x48DC18B ==103000== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103000== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103000== by 0x48DC18B: Curl_open (url.c:519) ==103000== by 0x487CCEF: curl_easy_init (easy.c:368) ==103000== by 0x1090DD: UnknownInlinedFun (lib652.c:50) ==103000== by 0x1090DD: main (first.c:178) ==103000== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103000== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103000== by 0x4A58EC8: tsearch (tsearch.c:290) ==103000== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103000== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103000== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103000== by 0x497836B: setlocale (setlocale.c:337) ==103000== by 0x10904C: main (first.c:157) ==103000== ==103000== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103000== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103000== by 0x4A58EC8: tsearch (tsearch.c:290) ==103000== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103000== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103000== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103000== by 0x497836B: setlocale (setlocale.c:337) ==103000== by 0x10904C: main (first.c:157) ==103000== ==103000== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103000== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103000== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103000== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103000== by 0x497836B: setlocale (setlocale.c:337) ==103000== by 0x10904C: main (first.c:157) ==103000== ==103000== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103000== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103000== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103000== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103000== by 0x497836B: setlocale (setlocale.c:337) ==103000== by 0x10904C: main (first.c:157) ==103000== ==103000== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103000== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103000== by 0x48DC163: Curl_open (url.c:510) ==103000== by 0x487CCEF: curl_easy_init (easy.c:368) ==103000== by 0x1090DD: UnknownInlinedFun (lib652.c:50) ==103000== by 0x1090DD: main (first.c:178) ==103000== ==103000== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103000== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103000== by 0x4A58EC8: tsearch (tsearch.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/9/valgrind667 ./libtest/lib667 http://127.0.0.1:40247/667 > log/9/stdout667 2> log/9/stderr667 :290) ==103000== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103000== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103000== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103000== by 0x497836B: setlocale (setlocale.c:337) ==103000== by 0x10904C: main (first.c:157) ==103000== ==103000== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103000== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103000== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103000== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103000== by 0x497836B: setlocale (setlocale.c:337) ==103000== by 0x10904C: main (first.c:157) ==103000== === End of file valgrind652 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/9/valgrind667 ./libtest/lib667 http://127.0.0.1:40247/667 > log/9/stdout667 2> log/9/stderr667 667: 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 667 === Start of file server.cmd Testnum 667 === End of file server.cmd === Start of file stderr667 URL: http://127.0.0.1:40247/667 === End of file stderr667 === Start of file valgrind667 ==103047== ==103047== Process terminating with default action of signal 4 (SIGILL) ==103047== Illegal opcode at address 0x48DC18B ==103047== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103047== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103047== by 0x48DC18B: Curl_open (url.c:519) ==103047== by 0x487CCEF: curl_easy_init (easy.c:368) ==103047== by 0x10909A: UnknownInlinedFun (lib667.c:75) ==103047== by 0x10909A: main (first.c:178) ==103047== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103047== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103047== by 0x4A58EC8: tsearch (tsearch.c:290) ==103047== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103047== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103047== by 0x497836B: setlocale (setlocale.c:337) ==103047== by 0x109056: main (first.c:157) ==103047== ==103047== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103047== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103047== by 0x4A58EC8: tsearch (tsearch.c:290) ==103047== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103047== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103047== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103047== by 0x497836B: setlocale (setlocale.c:337) ==103047== by 0x109056: main (first.c:157) ==103047== ==103047== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103047== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103047== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103047== by 0x497836B: setlocale (setlocale.c:337) ==103047== by 0x109056: main (first.c:157) ==103047== ==103047== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103047== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103047== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103047== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103047== by 0x497836B: setlocale (setlocale.c:337) ==103047== by 0x109056: main (first.c:157) ==103047== ==103047== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103047== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103047== by 0x48DC163: Curl_open (url.c:510) ==103047== by 0x487CCEF: curl_easy_init (easy.c:368) ==103047== by 0x10909A: UnknownInlinedFun (lib667.c:75) ==103047== by 0x10909A: main (first.c:178) ==103047== ==103047== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103047== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103047== by 0x4A58EC8: tsearch (tsearch.c:290) ==103047== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103047== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103047== by 0x497836B: setlocale (setlocale.c:337) ==103047== by 0x109056: main (first.c:157) ==103047== ==103047== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103047== by 0x496C669: add_alias2.part.0 (gconv_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/10/valgrind668 ./libtest/lib668 http://127.0.0.1:36145/668 log/10/file668.txt > log/10/stdout668 2> log/10/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/7/valgrind670 ./libtest/lib670 http://127.0.0.1:35853/670 > log/7/stdout670 2> log/7/stderr670 nf.c:132) ==103047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103047== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103047== by 0x497836B: setlocale (setlocale.c:337) ==103047== by 0x109056: main (first.c:157) ==103047== === End of file valgrind667 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/10/valgrind668 ./libtest/lib668 http://127.0.0.1:36145/668 log/10/file668.txt > log/10/stdout668 2> log/10/stderr668 668: 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 668 === Start of file file668.txt This is data from a file === End of file file668.txt === Start of file server.cmd Testnum 668 === End of file server.cmd === Start of file stderr668 URL: http://127.0.0.1:36145/668 === End of file stderr668 === Start of file valgrind668 ==103077== ==103077== Process terminating with default action of signal 4 (SIGILL) ==103077== Illegal opcode at address 0x48DC18B ==103077== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103077== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103077== by 0x48DC18B: Curl_open (url.c:519) ==103077== by 0x487CCEF: curl_easy_init (easy.c:368) ==103077== by 0x1090AD: UnknownInlinedFun (lib668.c:68) ==103077== by 0x1090AD: main (first.c:178) ==103077== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103077== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103077== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103077== by 0x4A58EC8: tsearch (tsearch.c:290) ==103077== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103077== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103077== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103077== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103077== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103077== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103077== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103077== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103077== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103077== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103077== by 0x497836B: setlocale (setlocale.c:337) ==103077== by 0x109058: main (first.c:157) ==103077== ==103077== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103077== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103077== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103077== by 0x4A58EC8: tsearch (tsearch.c:290) ==103077== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103077== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103077== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103077== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103077== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103077== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103077== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103077== by 0x497836B: setlocale (setlocale.c:337) ==103077== by 0x109058: main (first.c:157) ==103077== ==103077== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103077== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103077== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103077== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103077== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103077== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103077== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103077== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103077== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103077== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103077== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103077== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103077== by 0x497836B: setlocale (setlocale.c:337) ==103077== by 0x109058: main (first.c:157) ==103077== ==103077== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103077== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103077== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103077== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103077== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103077== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103077== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103077== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103077== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103077== by 0x497836B: setlocale (setlocale.c:337) ==103077== by 0x109058: main (first.c:157) ==103077== ==103077== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103077== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103077== by 0x48DC163: Curl_open (url.c:510) ==103077== by 0x487CCEF: curl_easy_init (easy.c:368) ==103077== by 0x1090AD: UnknownInlinedFun (lib668.c:68) ==103077== by 0x1090AD: main (first.c:178) ==103077== ==103077== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103077== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103077== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103077== by 0x4A58EC8: tsearch (tsearch.c:290) ==103077== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103077== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103077== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103077== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103077== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103077== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103077== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103077== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103077== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103077== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103077== by 0x497836B: setlocale (setlocale.c:337) ==103077== by 0x109058: main (first.c:157) ==103077== ==103077== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103077== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103077== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103077== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103077== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103077== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103077== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103077== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103077== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103077== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103077== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103077== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103077== by 0x497836B: setlocale (setlocale.c:337) ==103077== by 0x109058: main (first.c:157) ==103077== === End of file valgrind668 test 0670...[Request pause from mime read callback: multi] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppreCMD (33792): ../libtool --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/valgrind671 ./libtest/lib671 http://127.0.0.1:41583/671 > log/6/stdout671 2> log/6/stderr671 ssions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind670 ./libtest/lib670 http://127.0.0.1:35853/670 > log/7/stdout670 2> log/7/stderr670 670: 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 670 === Start of file server.cmd Testnum 670 === End of file server.cmd === Start of file stderr670 URL: http://127.0.0.1:35853/670 === End of file stderr670 === Start of file valgrind670 ==103191== ==103191== Process terminating with default action of signal 4 (SIGILL) ==103191== Illegal opcode at address 0x48DC18B ==103191== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103191== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103191== by 0x48DC18B: Curl_open (url.c:519) ==103191== by 0x487CCEF: curl_easy_init (easy.c:368) ==103191== by 0x1092E0: test (lib670.c:132) ==103191== by 0x109076: main (first.c:178) ==103191== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103191== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103191== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103191== by 0x4A58EC8: tsearch (tsearch.c:290) ==103191== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103191== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103191== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103191== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103191== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103191== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103191== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103191== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103191== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103191== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103191== by 0x497836B: setlocale (setlocale.c:337) ==103191== by 0x109047: main (first.c:157) ==103191== ==103191== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103191== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103191== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103191== by 0x4A58EC8: tsearch (tsearch.c:290) ==103191== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103191== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103191== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103191== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103191== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103191== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103191== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103191== by 0x497836B: setlocale (setlocale.c:337) ==103191== by 0x109047: main (first.c:157) ==103191== ==103191== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103191== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103191== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103191== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103191== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103191== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103191== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103191== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103191== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103191== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103191== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103191== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103191== by 0x497836B: setlocale (setlocale.c:337) ==103191== by 0x109047: main (first.c:157) ==103191== ==103191== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103191== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103191== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103191== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103191== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103191== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103191== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103191== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103191== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103191== by 0x497836B: setlocale (setlocale.c:337) ==103191== by 0x109047: main (first.c:157) ==103191== ==103191== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103191== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103191== by 0x48DC163: Curl_open (url.c:510) ==103191== by 0x487CCEF: curl_easy_init (easy.c:368) ==103191== by 0x1092E0: test (lib670.c:132) ==103191== by 0x109076: main (first.c:178) ==103191== ==103191== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103191== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103191== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103191== by 0x4A58EC8: tsearch (tsearch.c:290) ==103191== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103191== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103191== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103191== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103191== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103191== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103191== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103191== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103191== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103191== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103191== by 0x497836B: setlocale (setlocale.c:337) ==103191== by 0x109047: main (first.c:157) ==103191== ==103191== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103191== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103191== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103191== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103191== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103191== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103191== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103191== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103191== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103191== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103191== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103191== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103191== by 0x497836B: setlocale (setlocale.c:337) ==103191== by 0x109047: main (first.c:157) ==103191== === 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/6/valgrind671 ./libtest/lib671 http://127.0.0.1:41583/671 > log/6/stdout671 2> log/6/stderr671 671: 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 671 === Start of file server.cmd Testnum 671 === End of file server.cmd === Start of file stderr671 URL: http://127.0.0.1:41583/671 === End of file stderr671 === Start of file valgrind671 ==103241== ==103241== Process terminating with default action of signal 4 (SIGILL) ==103241== Illegal opcode at address 0x48DC18B ==103241== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103241== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103241== by 0x48DC18B: Curl_open (url.c:519) ==103241== by 0x487CCEF: curl_easy_init (easy.c:368) ==103241== by 0x1090A9: UnknownInlinedFun (lib670.c:132) ==103241== by 0x1090A9: main (first.c:178) ==103241== 408 bytes in CMD (33792): ../libtool --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/valgrind675 ../src/curl -q --output log/4/curl675.out --include --trace-ascii log/4/trace675 --trace-time http://user1:foo1@127.0.0.1:41947/user1/675 http://user2:foo2@127.0.0.1:41947/user2/675 > log/4/stdout675 2> log/4/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/8/valgrind672 ./libtest/lib672 http://127.0.0.1:33791/672 > log/8/stdout672 2> log/8/stderr672 17 blocks are possibly lost in loss record 600 of 650 ==103241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103241== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103241== by 0x4A58EC8: tsearch (tsearch.c:290) ==103241== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103241== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103241== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103241== by 0x497836B: setlocale (setlocale.c:337) ==103241== by 0x109058: main (first.c:157) ==103241== ==103241== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103241== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103241== by 0x4A58EC8: tsearch (tsearch.c:290) ==103241== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103241== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103241== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103241== by 0x497836B: setlocale (setlocale.c:337) ==103241== by 0x109058: main (first.c:157) ==103241== ==103241== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103241== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103241== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103241== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103241== by 0x497836B: setlocale (setlocale.c:337) ==103241== by 0x109058: main (first.c:157) ==103241== ==103241== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103241== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103241== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103241== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103241== by 0x497836B: setlocale (setlocale.c:337) ==103241== by 0x109058: main (first.c:157) ==103241== ==103241== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103241== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103241== by 0x48DC163: Curl_open (url.c:510) ==103241== by 0x487CCEF: curl_easy_init (easy.c:368) ==103241== by 0x1090A9: UnknownInlinedFun (lib670.c:132) ==103241== by 0x1090A9: main (first.c:178) ==103241== ==103241== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103241== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103241== by 0x4A58EC8: tsearch (tsearch.c:290) ==103241== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103241== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103241== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103241== by 0x497836B: setlocale (setlocale.c:337) ==103241== by 0x109058: main (first.c:157) ==103241== ==103241== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103241== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103241== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103241== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103241== by 0x497836B: setlocale (setlocale.c:337) ==103241== by 0x109058: main (first.c:157) ==103241== === End of file valgrind671 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/4/valgrind675 ../src/curl -q --output log/4/curl675.out --include --trace-ascii log/4/trace675 --trace-time http://user1:foo1@127.0.0.1:41947/user1/675 http://user2:foo2@127.0.0.1:41947/user2/675 > log/4/stdout675 2> log/4/stderr675 675: 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 675 === Start of file server.cmd Testnum 675 === End of file server.cmd === Start of file valgrind675 ==103501== ==103501== Process terminating with default action of signal 4 (SIGILL) ==103501== Illegal opcode at address 0x10B06D ==103501== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103501== by 0x10B06D: main (tool_main.c:234) === End of file valgrind675 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/8/valgrind672 ./libtest/lib672 http://127.0.0.1:33791/672 > log/8/stdout672 2> log/8/stderr672 672: 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 672 === Start of file server.cmd Testnum 672 === End of file server.cmd === Start of file stderr672 URL: http://127.0.0.1:33791/672 === End of file stderr672 === Start of file valgrind672 ==103289== ==103289== Process terminating with default action of signal 4 (SIGILL) ==103289== Illegal opcode at address 0x48DC18B ==103289== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103289== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103289== by 0x48DC18B: Curl_open (url.c:519) ==103289== by 0x487CCEF: curl_easy_init (easy.c:368) ==103289== by 0x109300: test (lib670.c:132) ==103289== by 0x109076: main (first.c:178) ==103289== 408 bytes in 17 blCMD (33792): ../libtool --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/valgrind673 ./libtest/lib673 http://127.0.0.1:39283/673 > log/1/stdout673 2> log/1/stderr673 ocks are possibly lost in loss record 600 of 650 ==103289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103289== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103289== by 0x4A58EC8: tsearch (tsearch.c:290) ==103289== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103289== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103289== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103289== by 0x497836B: setlocale (setlocale.c:337) ==103289== by 0x109047: main (first.c:157) ==103289== ==103289== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103289== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103289== by 0x4A58EC8: tsearch (tsearch.c:290) ==103289== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103289== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103289== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103289== by 0x497836B: setlocale (setlocale.c:337) ==103289== by 0x109047: main (first.c:157) ==103289== ==103289== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103289== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103289== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103289== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103289== by 0x497836B: setlocale (setlocale.c:337) ==103289== by 0x109047: main (first.c:157) ==103289== ==103289== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103289== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103289== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103289== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103289== by 0x497836B: setlocale (setlocale.c:337) ==103289== by 0x109047: main (first.c:157) ==103289== ==103289== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103289== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103289== by 0x48DC163: Curl_open (url.c:510) ==103289== by 0x487CCEF: curl_easy_init (easy.c:368) ==103289== by 0x109300: test (lib670.c:132) ==103289== by 0x109076: main (first.c:178) ==103289== ==103289== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103289== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103289== by 0x4A58EC8: tsearch (tsearch.c:290) ==103289== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103289== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103289== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103289== by 0x497836B: setlocale (setlocale.c:337) ==103289== by 0x109047: main (first.c:157) ==103289== ==103289== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103289== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103289== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103289== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103289== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103289== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103289== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103289== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103289== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103289== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103289== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103289== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103289== by 0x497836B: setlocale (setlocale.c:337) ==103289== by 0x109047: main (first.c:157) ==103289== === End of file valgrind672 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/1/valgrind673 ./libtest/lib673 http://127.0.0.1:39283/673 > log/1/stdout673 2> log/1/stderr673 673: 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 673 === Start of file server.cmd Testnum 673 === End of file server.cmd === Start of file stderr673 URL: http://127.0.0.1:39283/673 === End of file stderr673 === Start of file valgrind673 ==103313== ==103313== Process terminating with default action of signal 4 (SIGILL) ==103313== Illegal opcode at address 0x48DC18B ==103313== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103313== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103313== by 0x48DC18B: Curl_open (url.c:519) ==103313== by 0x487CCEF: curl_easy_init (easy.c:368) ==103313== by 0x1090B2: UnknownInlinedFun (lib670.c:132) ==103313== by 0x1090B2: main (first.c:178) ==103313== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103313== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103313== by 0x4A58EC8: tsearch (tsearch.c:290) ==103313== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103313== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103313== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103313== by 0x497836B: setlocale (setlocale.c:337) ==103313== by 0x109054: main (first.c:157) ==103313== ==103313== 552 bytes CMD (33792): ../libtool --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/valgrind660 ./libtest/lib597 imap://127.0.0.1:42165/660 > log/3/stdout660 2> log/3/stderr660 in 23 blocks are possibly lost in loss record 605 of 650 ==103313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103313== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103313== by 0x4A58EC8: tsearch (tsearch.c:290) ==103313== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103313== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103313== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103313== by 0x497836B: setlocale (setlocale.c:337) ==103313== by 0x109054: main (first.c:157) ==103313== ==103313== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103313== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103313== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103313== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103313== by 0x497836B: setlocale (setlocale.c:337) ==103313== by 0x109054: main (first.c:157) ==103313== ==103313== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103313== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103313== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103313== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103313== by 0x497836B: setlocale (setlocale.c:337) ==103313== by 0x109054: main (first.c:157) ==103313== ==103313== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103313== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103313== by 0x48DC163: Curl_open (url.c:510) ==103313== by 0x487CCEF: curl_easy_init (easy.c:368) ==103313== by 0x1090B2: UnknownInlinedFun (lib670.c:132) ==103313== by 0x1090B2: main (first.c:178) ==103313== ==103313== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103313== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103313== by 0x4A58EC8: tsearch (tsearch.c:290) ==103313== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103313== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103313== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103313== by 0x497836B: setlocale (setlocale.c:337) ==103313== by 0x109054: main (first.c:157) ==103313== ==103313== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103313== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103313== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103313== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103313== by 0x497836B: setlocale (setlocale.c:337) ==103313== by 0x109054: main (first.c:157) ==103313== === End of file valgrind673 startnew: perl -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 42165 (log/3/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:42165/verifiedserver" 2>log/3/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 102473 port 42165 * pid imap => 102473 102473 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/3/valgrind660 ./libtest/lib597 imap://127.0.0.1:42165/660 > log/3/stdout660 2> log/3/stderr660 660: 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 660 === Start of file imap_server.log 11:16:37.697312 IMAP server listens on port IPv4/42165 11:16:37.697391 logged pid 102473 in log/3/server/imap_server.pid 11:16:37.697411 Awaiting input 11:16:38.686945 ====> Client connect 11:16:38.687090 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:38.687341 < "A001 CAPABILITY" 11:16:38.687371 > "A001 BAD Command[CR][LF]" 11:16:38.687503 < "A002 LIST "verifiedserver" *" 11:16:38.687528 LIST_imap got "verifiedserver" * 11:16:38.687547 > "* LIST () "/" "WE ROOLZ: 102473"[CR][LF]" 11:16:38.687562 > "A002 OK LIST Completed[CR][LF]" 11:16:38.687573 return proof we are we 11:16:38.732426 < "A003 LOGOUT" 11:16:38.732476 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:38.732490 > "A003 OK LOGOUT completed[CR][LF]" 11:16:38.779558 MAIN sockfilt said DISC 11:16:38.779615 ====> Client disconnected 11:16:38.779662 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:37.214430 Running IPv4 version 11:16:37.214497 Listening on port 42165 11:16:37.214527 Wrote pid 102512 to log/3/server/imap_sockfilt.pid 11:16:37.214549 Wrote port 42165 to log/3/server/imap_server.port 11:16:37.214561 Received PING (on stdin) 11:16:38.204191 ====> Client connect 11:16:38.204421 Received DATA (on stdin) 11:16:38.204431 > 178 bytes data, server => client 11:16:38.204441 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:38.204450 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:38.204458 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:38.204465 'rve\r\n' 11:16:38.204532 < 17 bytes data, client => server 11:16:38.204541 'A001 CAPABILITY\r\n' 11:16:38.204698 Received DATA (on stdin) 11:16:38.204707 > 18 bytes data, server => client 11:16:38.204715 'A001 BAD Command\r\n' 11:16:38.204763 < 30 bytes data, client => server 11:16:38.204772 'A002 LIST "verifiedserver" *\r\n' 11:16:38.204895 Received DATA (on stdin) 11:16:38.204904 > 34 bytes 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/9/valgrind679 ../src/curl -q --output log/9/curl679.out --include --trace-ascii log/9/trace679 --trace-time --netrc-optional --netrc-file log/9/netrc679 http://127.0.0.1:40247/ > log/9/stdout679 2> log/9/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/valgrind680 ../src/curl -q --output log/10/curl680.out --include --trace-ascii log/10/trace680 --trace-time --netrc --netrc-file log/10/netrc680 http://user1@http.example/ > log/10/stdout680 2> log/10/stderr680 ata, server => client 11:16:38.204912 '* LIST () "/" "WE ROOLZ: 102473"\r\n' 11:16:38.204929 Received DATA (on stdin) 11:16:38.204936 > 24 bytes data, server => client 11:16:38.204944 'A002 OK LIST Completed\r\n' 11:16:38.249580 < 13 bytes data, client => server 11:16:38.249613 'A003 LOGOUT\r\n' 11:16:38.249814 Received DATA (on stdin) 11:16:38.249823 > 36 bytes data, server => client 11:16:38.249831 '* BYE curl IMAP server signing off\r\n' 11:16:38.249849 Received DATA (on stdin) 11:16:38.249856 > 26 bytes data, server => client 11:16:38.249864 'A003 OK LOGOUT completed\r\n' 11:16:38.296804 ====> Client disconnect 11:16:38.296987 Received ACKD (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:42165/660 === End of file stderr660 === Start of file valgrind660 ==103401== ==103401== Process terminating with default action of signal 4 (SIGILL) ==103401== Illegal opcode at address 0x48DC18B ==103401== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103401== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103401== by 0x48DC18B: Curl_open (url.c:519) ==103401== by 0x487CCEF: curl_easy_init (easy.c:368) ==103401== by 0x1092F1: test.part.0 (lib597.c:56) ==103401== by 0x10909E: UnknownInlinedFun (lib597.c:54) ==103401== by 0x10909E: main (first.c:178) ==103401== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103401== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103401== by 0x4A58EC8: tsearch (tsearch.c:290) ==103401== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103401== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103401== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103401== by 0x497836B: setlocale (setlocale.c:337) ==103401== by 0x109047: main (first.c:157) ==103401== ==103401== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103401== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103401== by 0x4A58EC8: tsearch (tsearch.c:290) ==103401== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103401== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103401== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103401== by 0x497836B: setlocale (setlocale.c:337) ==103401== by 0x109047: main (first.c:157) ==103401== ==103401== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103401== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103401== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103401== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103401== by 0x497836B: setlocale (setlocale.c:337) ==103401== by 0x109047: main (first.c:157) ==103401== ==103401== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103401== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103401== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103401== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103401== by 0x497836B: setlocale (setlocale.c:337) ==103401== by 0x109047: main (first.c:157) ==103401== ==103401== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103401== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103401== by 0x48DC163: Curl_open (url.c:510) ==103401== by 0x487CCEF: curl_easy_init (easy.c:368) ==103401== by 0x1092F1: test.part.0 (lib597.c:56) ==103401== by 0x10909E: UnknownInlinedFun (lib597.c:54) ==103401== by 0x10909E: main (first.c:178) ==103401== ==103401== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103401== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103401== by 0x4A58EC8: tsearch (tsearch.c:290) ==103401== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103401== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103401== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103401== by 0x497836B: setlocale (setlocale.c:337) ==103401== by 0x109047: main (first.c:157) ==103401== ==103401== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103401== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103401== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103401== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103401== by 0x497836B: setlocale (setlocale.c:337) ==103401== by 0x109047: main (first.c:157) ==103401== === End of file valgrind660 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/9/valgrind679 ../src/curl -q --output log/9/curl679.out --include --trace-ascii log/9/trace679 --trace-time --netrc-optional --netrc-file log/9/netrc679 http://127.0.0.1:40247/ > log/9/stdout679 2> log/9/stderr679 679: 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 679 === Start of file netrc679 machine 127.0.0.1 login user1 password "with spaces and \"\n\r\t\a" === 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/11/valgrind674 ./libtest/lib674 http://127.0.0.1:35843/674 > log/11/stdout674 2> log/11/stderr674 e netrc679 === Start of file server.cmd Testnum 679 === End of file server.cmd === Start of file valgrind679 ==103613== ==103613== Process terminating with default action of signal 4 (SIGILL) ==103613== Illegal opcode at address 0x10B06D ==103613== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103613== by 0x10B06D: main (tool_main.c:234) === End of file valgrind679 * 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/10/valgrind680 ../src/curl -q --output log/10/curl680.out --include --trace-ascii log/10/trace680 --trace-time --netrc --netrc-file log/10/netrc680 http://user1@http.example/ > log/10/stdout680 2> log/10/stderr680 curl returned 132, when expecting 26 680: exit FAILED == Contents of files in the log/10/ dir after test 680 === 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 ==103640== ==103640== Process terminating with default action of signal 4 (SIGILL) ==103640== Illegal opcode at address 0x10B06D ==103640== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103640== by 0x10B06D: main (tool_main.c:234) === End of file valgrind680 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/11/valgrind674 ./libtest/lib674 http://127.0.0.1:35843/674 > log/11/stdout674 2> log/11/stderr674 674: 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 674 === Start of file server.cmd Testnum 674 === End of file server.cmd === Start of file stderr674 URL: http://127.0.0.1:35843/674 === End of file stderr674 === Start of file valgrind674 ==103450== ==103450== Process terminating with default action of signal 4 (SIGILL) ==103450== Illegal opcode at address 0x48DC18B ==103450== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103450== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103450== by 0x48DC18B: Curl_open (url.c:519) ==103450== by 0x487CCEF: curl_easy_init (easy.c:368) ==103450== by 0x109091: UnknownInlinedFun (lib674.c:43) ==103450== by 0x109091: UnknownInlinedFun (lib674.c:34) ==103450== by 0x109091: main (first.c:178) ==103450== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103450== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103450== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103450== by 0x4A58EC8: tsearch (tsearch.c:290) ==103450== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103450== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103450== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103450== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103450== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103450== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103450== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103450== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103450== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103450== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103450== by 0x497836B: setlocale (setlocale.c:337) ==103450== by 0x10904B: main (first.c:157) ==103450== ==103450== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103450== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103450== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103450== by 0x4A58EC8: tsearch (tsearch.c:290) ==103450== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103450== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103450== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103450== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103450== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103450== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103450== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103450== by 0x497836B: setlocale (setlocale.c:337) ==103450== by 0x10904B: main (first.c:157) ==103450== ==103450== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103450== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103450== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103450== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103450== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103450== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103450== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103450== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103450== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103450== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103450== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103450== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103450== by 0x497836B: setlocale (setlocale.c:337) ==103450== by 0x10904B: main (first.c:157) ==103450== ==103450== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103450== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103450== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103450== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103450== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103450== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103450== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103450== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103450== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103450== by 0x497836B: setlocale (setlocale.c:337) ==103450== by 0x10904B: main (first.c:157) ==103450== ==103450== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103450== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103450== by 0x48DC163: Curl_open (url.c:510) ==103450== by 0x487CCEF: curl_easy_init (easy.c:368) ==103450== by 0x109091: UnknownInlinedFun (lib674.c:43) ==103450== by 0x109091: UnknownInlinedFun (lib674.c:34) ==103450== by 0x109091: main (first.c:178) ==103450== ==103450== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103450== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103450== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103450== by 0x4A58EC8: tsearch (tsearch.c:290) ==103450== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103450== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103450== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103450== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103450== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103450== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103450== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103450== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103450== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103450== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103450== by 0x497836B: setlocale (setlocale.c:337) ==103450== by 0x10904B: main (first.c:157) ==103450== ==103450== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103450== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103450== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103450== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103450== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103450== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103450=CMD (33792): ../libtool --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/valgrind681 ../src/curl -q --trace-ascii log/7/trace681 --trace-time --remote-name-all --no-remote-name --output-dir log http://127.0.0.1:35853/681 > log/7/stdout681 2> log/7/stderr681 = by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103450== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103450== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103450== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103450== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103450== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103450== by 0x497836B: setlocale (setlocale.c:337) ==103450== by 0x10904B: main (first.c:157) ==103450== === End of file valgrind674 RUN: Process with pid 100121 forced to die with SIGKILL CMD (33792): ../libtool --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/valgrind682 ../src/curl -q --output log/6/curl682.out --include --trace-ascii log/6/trace682 --trace-time --netrc-optional --netrc-file log/6/netrc682 http://user1@127.0.0.1:41583/ > log/6/stdout682 2> log/6/stderr682 CMD (33792): ../libtool --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/valgrind684 ../src/curl -q --output log/8/curl684.out --include --trace-ascii log/8/trace684 --trace-time --netrc-optional --netrc-file log/8/netrc684 http://127.0.0.1:33791/ > log/8/stdout684 2> log/8/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/1/valgrind685 ../src/curl -q --output log/1/curl685.out --include --trace-ascii log/1/trace685 --trace-time --netrc-optional --netrc-file log/1/netrc685 http://user@127.0.0.1:39283/ > log/1/stdout685 2> log/1/stderr685 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/7/valgrind681 ../src/curl -q --trace-ascii log/7/trace681 --trace-time --remote-name-all --no-remote-name --output-dir log http://127.0.0.1:35853/681 > log/7/stdout681 2> log/7/stderr681 681: stdout FAILED: --- log/7/check-expected 2024-05-23 11:16:39.870794722 +0200 +++ log/7/check-generated 2024-05-23 11:16:39.870794722 +0200 @@ -1 +0,0 @@ --foo-[LF] == Contents of files in the log/7/ dir after test 681 === Start of file check-expected -foo-[LF] === End of file check-expected === Start of file server.cmd Testnum 681 === End of file server.cmd === Start of file valgrind681 ==103702== ==103702== Process terminating with default action of signal 4 (SIGILL) ==103702== Illegal opcode at address 0x10B06D ==103702== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103702== by 0x10B06D: main (tool_main.c:234) === End of file valgrind681 startnew: perl -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 33319 startnew: child process has died, server might start up RUN: failed to start the SSH server on 33319 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/6/valgrind682 ../src/curl -q --output log/6/curl682.out --include --trace-ascii log/6/trace682 --trace-time --netrc-optional --netrc-file log/6/netrc682 http://user1@127.0.0.1:41583/ > log/6/stdout682 2> log/6/stderr682 682: 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 682 === 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 valgrind682 ==103770== ==103770== Process terminating with default action of signal 4 (SIGILL) ==103770== Illegal opcode at address 0x10B06D ==103770== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103770== by 0x10B06D: main (tool_main.c:234) === End of file valgrind682 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/8/valgrind684 ../src/curl -q --output log/8/curl684.out --include --trace-ascii log/8/trace684 --trace-time --netrc-optional --netrc-file log/8/netrc684 http://127.0.0.1:33791/ > log/8/stdout684 2> log/8/stderr684 684: 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 684 === 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 valgrind684 ==103840== ==103840== Process terminating with default action of signal 4 (SIGILL) ==103840== Illegal opcode at address 0x10B06D ==103840== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103840== by 0x10B06D: main (tool_main.c:234) === End of file valgrind684 CMD (33792): ../libtool --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/valgrind683 ../src/curl -q --output log/4/curl683.out --include --trace-ascii log/4/trace683 --trace-time --netrc-optional --netrc-file log/4/netrc683 http://user2@127.0.0.1:41947/ > log/4/stdout683 2> log/4/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/12/valgrind676 ./libtest/lib676 http://127.0.0.1:44175/we/want/676 log/12/cookies676 > log/12/stdout676 2> log/12/stderr676 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/1/valgrind685 ../src/curl -q --output log/1/curl685.out --include --trace-ascii log/1/trace685 --trace-time --netrc-optional --netrc-file log/1/netrc685 http://user@127.0.0.1:39283/ > log/1/stdout685 2> log/1/stderr685 685: data FAILED: --- log/1/check-expected 2024-05-23 11:16:40.040798213 +0200 +++ log/1/check-generated 2024-05-23 11:16:40.040798213 +0200 @@ -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/1/ 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 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 valgrind685 ==103876== ==103876== Process terminating with default action of signal 4 (SIGILL) ==103876== Illegal opcode at address 0x10B06D ==103876== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103876== by 0x10B06D: main (tool_main.c:234) === End of file valgrind685 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/4/valgrind683 ../src/curl -q --output log/4/curl683.out --include --trace-ascii log/4/trace683 --trace-time --netrc-optional --netrc-file log/4/netrc683 http://user2@127.0.0.1:41947/ > log/4/stdout683 2> log/4/stderr683 683: 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 683 === Start of file netrc683 machine 127.0.0.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 valgrind683 ==103823== ==103823== Process terminating with default action of signal 4 (SIGILL) ==103823== Illegal opcode at address 0x10B06D ==103823== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103823== by 0x10B06D: main (tool_main.c:234) === End of file valgrind683 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/12/valgrind676 ./libtest/lib676 http://127.0.0.1:44175/we/want/676 log/12/cookies676 > log/12/stdout676 2> log/12/stderr676 676: 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 676 === Start of file cookies676 127.0.0.1 TRUE /we/want/ FALSE 22118138987 proven yes === End of file cookies676 === Start of file server.cmd Testnum 676 === End of file server.cmd === Start of file stderr676 URL: http://127.0.0.1:44175/we/want/676 === End of file stderr676 === Start of file valgrind676 ==103559== ==103559== Process terminating with default action of signal 4 (SIGILL) ==103559== Illegal opcode at address 0x48DC18B ==103559== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==103559== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==103559== by 0x48DC18B: Curl_open (url.c:519) ==103559== by 0x487CCEF: curl_easy_init (easy.c:368) ==103559== by 0x10909A: UnknownInlinedFun (lib676.c:38) ==103559== by 0x10909A: main (first.c:178) ==103559== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==103559== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103559== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103559== by 0x4A58EC8: tsearch (tsearch.c:290) ==103559== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103559== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103559== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103559== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103559== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103559== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103559== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103559== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103559== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103559== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103559== by 0x497836B: setlocale (setlocale.c:337) ==103559== by 0x109047: main (first.c:157) ==103559== ==103559== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==103559== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103559== by 0x4A58EC8: __tsearch (tsearch.c:337) ==103559== by 0x4A58EC8: tsearch (tsearch.c:290) ==103559== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103559== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103559== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103559== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103559== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103559== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103559== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103559== by 0x497836B: setlocale (setlocale.c:337) ==103559== by 0x109047: main (first.c:157) ==103559== ==103559== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==103559== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103559== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103559== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103559== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103559== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103559== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103559== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==103559== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103559== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103559== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103559== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103559== by 0x497836B: setlocale (setlocale.c:337) ==103559== by 0x109047: main (first.c:157) ==103559== ==103559== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==103559== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103559== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103559== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==103559== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==103559== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103559== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103559== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103559== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103559== by 0x497836B: setlocale (setlocale.c:337) ==103559== by 0x109047: main (first.c:157) ==103559== ==103559== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==103559== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==103559== by 0x48DC163: Curl_open (url.c:510) ==103559== by 0x487CCEF: curl_easy_init (easy.c:368) ==103559== by 0x10909A: UnknownInlinedFun (lib676.c:38) ==103559== by 0x10909A: main (first.c:178) ==103559== ==103559== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==103559== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103559== by 0x4A58EC8: __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/3/valgrind686 ../src/curl -q --output log/3/curl686.out --include --trace-ascii log/3/trace686 --trace-time htdhdhdtp://localhost --next > log/3/stdout686 2> log/3/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/6/valgrind704 ../src/curl -q --output log/6/curl704.out --include --trace-ascii log/6/trace704 --trace-time --socks4 127.0.0.1:47 http://127.0.0.1:41583/704 > log/6/stdout704 2> log/6/stderr704 CMD (33792): ../libtool --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/valgrind705 ../src/curl -q --output log/8/curl705.out --include --trace-ascii log/8/trace705 --trace-time --socks5 127.0.0.1:47 http://127.0.0.1:33791/705 > log/8/stdout705 2> log/8/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/9/valgrind689 ./libtest/lib567 rtsp://127.0.0.1:45899/689 > log/9/stdout689 2> log/9/stderr689 (tsearch.c:337) ==103559== by 0x4A58EC8: tsearch (tsearch.c:290) ==103559== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==103559== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103559== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103559== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103559== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103559== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103559== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103559== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103559== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103559== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103559== by 0x497836B: setlocale (setlocale.c:337) ==103559== by 0x109047: main (first.c:157) ==103559== ==103559== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==103559== at 0x4842788: malloc (vg_replace_malloc.c:446) ==103559== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==103559== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==103559== by 0x496C9A2: add_alias (gconv_conf.c:178) ==103559== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103559== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103559== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==103559== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103559== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103559== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==103559== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==103559== by 0x497836B: setlocale (setlocale.c:337) ==103559== by 0x109047: main (first.c:157) ==103559== === End of file valgrind676 * 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/3/valgrind686 ../src/curl -q --output log/3/curl686.out --include --trace-ascii log/3/trace686 --trace-time htdhdhdtp://localhost --next > log/3/stdout686 2> log/3/stderr686 curl returned 132, when expecting 2 686: exit FAILED == Contents of files in the log/3/ dir after test 686 === Start of file server.cmd Testnum 686 === End of file server.cmd === Start of file valgrind686 ==103983== ==103983== Process terminating with default action of signal 4 (SIGILL) ==103983== Illegal opcode at address 0x10B06D ==103983== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==103983== by 0x10B06D: main (tool_main.c:234) === End of file valgrind686 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-time --socks4 127.0.0.1:47 http://127.0.0.1:41583/704 > log/6/stdout704 2> log/6/stderr704 curl returned 132, when expecting 7 704: exit FAILED == Contents of files in the log/6/ dir after test 704 === Start of file server.cmd Testnum 704 === End of file server.cmd === Start of file valgrind704 ==104084== ==104084== Process terminating with default action of signal 4 (SIGILL) ==104084== Illegal opcode at address 0x10B06D ==104084== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104084== by 0x10B06D: 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/8/valgrind705 ../src/curl -q --output log/8/curl705.out --include --trace-ascii log/8/trace705 --trace-time --socks5 127.0.0.1:47 http://127.0.0.1:33791/705 > log/8/stdout705 2> log/8/stderr705 curl returned 132, when expecting 7 705: exit FAILED == Contents of files in the log/8/ dir after test 705 === Start of file server.cmd Testnum 705 === End of file server.cmd === Start of file valgrind705 ==104117== ==104117== Process terminating with default action of signal 4 (SIGILL) ==104117== Illegal opcode at address 0x10B06D ==104117== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104117== by 0x10B06D: main (tool_main.c:234) === End of file valgrind705 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/9/valgrind689 ./libtest/lib567 rtsp://127.0.0.1:45899/689 > log/9/stdout689 2> log/9/stderr689 689: 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 689 === Start of file server.cmd Testnum 689 === End of file server.cmd === Start of file stderr689 URL: rtsp://127.0.0.1:45899/689 === End of file stderr689 === Start of file valgrind689 ==104032== ==104032== Process terminating with default action of signal 4 (SIGILL) ==104032== Illegal opcode at address 0x48DC18B ==104032== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==104032== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==104032== by 0x48DC18B: Curl_open (url.c:519) ==104032== by 0x487CCEF: curl_easy_init (easy.c:368) ==104032== by 0x10908E: UnknownInlinedFun (lib567.c:42) ==104032== by 0x10908E: main (first.c:178) ==104032== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==104032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==104032== by 0x4A58EC8: tsearch (tsearch.c:290) ==104032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==104032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104032== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104032== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==104032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104032== by 0x497836B: setlocale (setlocale.c:337) ==104032== by 0x10904B: main (first.c:157) ==104032== ==104032== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==104032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==104032== by 0x4A58EC8: tsearch (tsearch.c:290) ==104032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==104032== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==104032== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==104032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104032== by 0x497836B: setlocale (setlocale.c:337) ==104032== by 0x10904B: main (first.c:157) ==104032== ==104032== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==104032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==104032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104032== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104032== by 0x496CB0F: __gconv_read_conf (gconv_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/2/valgrind677 ./libtest/lib677 imap://127.0.0.1:40175/677 > log/2/stdout677 2> log/2/stderr677 nf.c:480) ==104032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104032== by 0x497836B: setlocale (setlocale.c:337) ==104032== by 0x10904B: main (first.c:157) ==104032== ==104032== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==104032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==104032== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==104032== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==104032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104032== by 0x497836B: setlocale (setlocale.c:337) ==104032== by 0x10904B: main (first.c:157) ==104032== ==104032== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==104032== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==104032== by 0x48DC163: Curl_open (url.c:510) ==104032== by 0x487CCEF: curl_easy_init (easy.c:368) ==104032== by 0x10908E: UnknownInlinedFun (lib567.c:42) ==104032== by 0x10908E: main (first.c:178) ==104032== ==104032== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==104032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==104032== by 0x4A58EC8: tsearch (tsearch.c:290) ==104032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==104032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104032== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104032== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==104032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104032== by 0x497836B: setlocale (setlocale.c:337) ==104032== by 0x10904B: main (first.c:157) ==104032== ==104032== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==104032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==104032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104032== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104032== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==104032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104032== by 0x497836B: setlocale (setlocale.c:337) ==104032== by 0x10904B: main (first.c:157) ==104032== === End of file valgrind689 startnew: perl -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 40175 (log/2/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:40175/verifiedserver" 2>log/2/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 103557 port 40175 * pid imap => 103557 103557 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/2/valgrind677 ./libtest/lib677 imap://127.0.0.1:40175/677 > log/2/stdout677 2> log/2/stderr677 677: 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 677 === Start of file imap_server.log 11:16:39.191375 IMAP server listens on port IPv4/40175 11:16:39.191444 logged pid 103557 in log/2/server/imap_server.pid 11:16:39.191466 Awaiting input 11:16:40.169680 ====> Client connect 11:16:40.169793 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:40.169980 < "A001 CAPABILITY" 11:16:40.170003 > "A001 BAD Command[CR][LF]" 11:16:40.170100 < "A002 LIST "verifiedserver" *" 11:16:40.170117 LIST_imap got "verifiedserver" * 11:16:40.170131 > "* LIST () "/" "WE ROOLZ: 103557"[CR][LF]" 11:16:40.170143 > "A002 OK LIST Completed[CR][LF]" 11:16:40.170150 return proof we are we 11:16:40.212331 < "A003 LOGOUT" 11:16:40.212374 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:40.212391 > "A003 OK LOGOUT completed[CR][LF]" 11:16:40.255541 MAIN sockfilt said DISC 11:16:40.255592 ====> Client disconnected 11:16:40.255633 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:39.708359 Running IPv4 version 11:16:39.708449 Listening on port 40175 11:16:39.708481 Wrote pid 103582 to log/2/server/imap_sockfilt.pid 11:16:39.708506 Wrote port 40175 to log/2/server/imap_server.port 11:16:39.708626 Received PING (on stdin) 11:16:40.686940 ====> Client connect 11:16:40.687119 Received DATA (on stdin) 11:16:40.687127 > 178 bytes data, server => client 11:16:40.687134 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:40.687140 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:40.687145 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:40.687150 'rve\r\n' 11:16:40.687203 < 17 bytes data, client => server 11:16:40.687209 'A001 CAPABILITY\r\n' 11:16:40.687325 Received DATA (on stdin) 11:16:40.687332 > 18 bytes data, server => client 11:16:40.687337 'A001 BAD Command\r\n' 11:16:40.687373 < 30 bytes data, client => server 11:16:40.687379 'A002 LIST "verifiedserver" *\r\n' 11:16:40.687469 Received DATA (on stdin) 11:16:40.687475 > 34 bytes data, server => client 11:16:40.687481 '* LIST () "/" "WE ROOLZ: 103557"\r\n' 11:16:40.687493 Received DATA (on stdin) 11:16:40.687499 > 24 bytes data, server => client 11:16:40.687504 'A002 OK LIST Completed\r\n' 11:16:40.729515 < 13 bytes data, client => server 11:16:40.729539 'A003 LOGOUT\r\n' 11:16:40.729717 Received DATA (on stdin) 11:16:40.729727 > 36 bytes data, server => client 11:16:40.729736 '* BYE curl IMAP server signing off\r\n' 11:16:40.729757 Received DATA (on stdin) 11:16:40.729765 > 26 bytes data, server => client 11:16:40.729773 'A003 OK LOGOUT completed\r\n' 11:16:40.772787 ====> Client disconnect 11:16:40.772954 Received ACKD (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:40175/677 === End of file stderr677 === Start of file valgrind677 ==104204== ==104204== Process terminating with default action of signal 4 (SIGILL) ==104204== Illegal opcode at address 0x48DC18B ==104204== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==104204== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==104204== by 0x48DC18B: Curl_open (url.c:519) ==104204== by 0x487CCEF: curl_easy_init (easy.c:368) ==104204== by 0x48B84E4: UnknownInlinedFun (conncacCMD (33792): ../libtool --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/valgrind701 ../src/curl -q --output log/11/curl701.out --include --trace-ascii log/11/trace701 --trace-time --socks5 127.0.0.1:35239 http://127.0.0.1:35843/701 > log/11/stdout701 2> log/11/stderr701 CMD (33792): ../libtool --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/valgrind706 ../src/curl -q --output log/1/curl706.out --include --trace-ascii log/1/trace706 --trace-time --socks4 127.0.0.1:36265 ftp://127.0.0.1:35701/ > log/1/stdout706 2> log/1/stderr706 he.c:106) ==104204== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==104204== by 0x1090B0: UnknownInlinedFun (lib677.c:45) ==104204== by 0x1090B0: main (first.c:178) ==104204== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==104204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104204== by 0x4A58EC8: __tsearch (tsearch.c:337) ==104204== by 0x4A58EC8: tsearch (tsearch.c:290) ==104204== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==104204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104204== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104204== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==104204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104204== by 0x497836B: setlocale (setlocale.c:337) ==104204== by 0x109058: main (first.c:157) ==104204== ==104204== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==104204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104204== by 0x4A58EC8: __tsearch (tsearch.c:337) ==104204== by 0x4A58EC8: tsearch (tsearch.c:290) ==104204== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==104204== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==104204== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==104204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104204== by 0x497836B: setlocale (setlocale.c:337) ==104204== by 0x109058: main (first.c:157) ==104204== ==104204== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==104204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104204== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==104204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104204== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104204== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==104204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104204== by 0x497836B: setlocale (setlocale.c:337) ==104204== by 0x109058: main (first.c:157) ==104204== ==104204== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==104204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104204== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==104204== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==104204== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==104204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104204== by 0x497836B: setlocale (setlocale.c:337) ==104204== by 0x109058: main (first.c:157) ==104204== ==104204== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==104204== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==104204== by 0x48DC163: Curl_open (url.c:510) ==104204== by 0x487CCEF: curl_easy_init (easy.c:368) ==104204== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==104204== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==104204== by 0x1090B0: UnknownInlinedFun (lib677.c:45) ==104204== by 0x1090B0: main (first.c:178) ==104204== ==104204== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==104204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104204== by 0x4A58EC8: __tsearch (tsearch.c:337) ==104204== by 0x4A58EC8: tsearch (tsearch.c:290) ==104204== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==104204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104204== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104204== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==104204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104204== by 0x497836B: setlocale (setlocale.c:337) ==104204== by 0x109058: main (first.c:157) ==104204== ==104204== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==104204== at 0x4842788: malloc (vg_replace_malloc.c:446) ==104204== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==104204== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==104204== by 0x496C9A2: add_alias (gconv_conf.c:178) ==104204== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104204== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104204== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==104204== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104204== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104204== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==104204== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==104204== by 0x497836B: setlocale (setlocale.c:337) ==104204== by 0x109058: main (first.c:157) ==104204== === End of file valgrind677 startnew: server/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 104030 * pid socks => 104030 104030 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/11/valgrind701 ../src/curl -q --output log/11/curl701.out --include --trace-ascii log/11/trace701 --trace-time --socks5 127.0.0.1:35239 http://127.0.0.1:35843/701 > log/11/stdout701 2> log/11/stderr701 701: 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 701 === Start of file server.cmd Testnum 701 === End of file server.cmd === Start of file socks_server.log 11:16:39.363901 Running IPv4 version 11:16:39.363948 Listening on port 35239 11:16:39.363970 Wrote pid 104030 to log/11/server/socks_server.pid 11:16:39.363987 Wrote port 35239 to log/11/server/socks_server.port === End of file socks_server.log === Start of file valgrind701 ==104258== ==104258== Process terminating with default action of signal 4 (SIGILL) ==104258== Illegal opcode at address 0x10B06D ==104258== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104258== by 0x10B06D: main (tool_main.c:234) === End of file valgrind701 startnew: server/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 104177 * pid socks => 104177 104177 test 0706...[FTP dir list PASCMD (33792): ../libtool --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/valgrind700 ../src/curl -q --output log/10/curl700.out --include --trace-ascii log/10/trace700 --trace-time --socks4 127.0.0.1:44779 http://127.0.0.1:36145/700 > log/10/stdout700 2> log/10/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/4/valgrind707 ../src/curl -q --output log/4/curl707.out --include --trace-ascii log/4/trace707 --trace-time --socks5 127.0.0.1:45859 ftp://127.0.0.1:36137/ > log/4/stdout707 2> log/4/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/5/valgrind703 ../src/curl -q --output log/5/curl703.out --include --trace-ascii log/5/trace703 --trace-time --socks5 127.0.0.1:32869 http://127.0.0.1:47 > log/5/stdout703 2> log/5/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/12/valgrind708 ../src/curl -q --output log/12/curl708.out --include --trace-ascii log/12/trace708 --trace-time http://127.0.0.1:44175/708 > log/12/stdout708 2> log/12/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/7/valgrind702 ../src/curl -q --output log/7/curl702.out --include --trace-ascii log/7/trace702 --trace-time --socks4 127.0.0.1:35343 http://127.0.0.1:47 > log/7/stdout702 2> log/7/stderr702 V via SOCKS4] ../libtool --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/valgrind706 ../src/curl -q --output log/1/curl706.out --include --trace-ascii log/1/trace706 --trace-time --socks4 127.0.0.1:36265 ftp://127.0.0.1:35701/ > log/1/stdout706 2> log/1/stderr706 706: 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 706 === Start of file server.cmd Testnum 706 === End of file server.cmd === Start of file socks_server.log 11:16:40.570790 Running IPv4 version 11:16:40.570840 Listening on port 36265 11:16:40.570861 Wrote pid 104177 to log/1/server/socks_server.pid 11:16:40.570878 Wrote port 36265 to log/1/server/socks_server.port === End of file socks_server.log === Start of file valgrind706 ==104318== ==104318== Process terminating with default action of signal 4 (SIGILL) ==104318== Illegal opcode at address 0x10B06D ==104318== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104318== by 0x10B06D: main (tool_main.c:234) === End of file valgrind706 startnew: server/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 104029 * pid socks => 104029 104029 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/10/valgrind700 ../src/curl -q --output log/10/curl700.out --include --trace-ascii log/10/trace700 --trace-time --socks4 127.0.0.1:44779 http://127.0.0.1:36145/700 > log/10/stdout700 2> log/10/stderr700 700: 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 700 === Start of file server.cmd Testnum 700 === End of file server.cmd === Start of file socks_server.log 11:16:39.361589 Running IPv4 version 11:16:39.361652 Listening on port 44779 11:16:39.361676 Wrote pid 104029 to log/10/server/socks_server.pid 11:16:39.361697 Wrote port 44779 to log/10/server/socks_server.port === End of file socks_server.log === Start of file valgrind700 ==104311== ==104311== Process terminating with default action of signal 4 (SIGILL) ==104311== Illegal opcode at address 0x10B06D ==104311== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104311== by 0x10B06D: main (tool_main.c:234) === End of file valgrind700 startnew: server/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 104178 * pid socks => 104178 104178 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/4/valgrind707 ../src/curl -q --output log/4/curl707.out --include --trace-ascii log/4/trace707 --trace-time --socks5 127.0.0.1:45859 ftp://127.0.0.1:36137/ > log/4/stdout707 2> log/4/stderr707 707: 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 707 === Start of file server.cmd Testnum 707 === End of file server.cmd === Start of file socks_server.log 11:16:40.571703 Running IPv4 version 11:16:40.571749 Listening on port 45859 11:16:40.571774 Wrote pid 104178 to log/4/server/socks_server.pid 11:16:40.571794 Wrote port 45859 to log/4/server/socks_server.port === End of file socks_server.log === Start of file valgrind707 ==104322== ==104322== Process terminating with default action of signal 4 (SIGILL) ==104322== Illegal opcode at address 0x10B06D ==104322== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104322== by 0x10B06D: main (tool_main.c:234) === End of file valgrind707 startnew: server/socksd --port 0 --pidfile log/5/server/socks_server.pid --portfile log/5/server/socks_server.port --reqfile log/5/socksd-request.log --logfile log/5/socks_server.log --backend 127.0.0.1 --config log/5/server.cmd RUN: SOCKS server is now running PID 104082 * pid socks => 104082 104082 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/5/valgrind703 ../src/curl -q --output log/5/curl703.out --include --trace-ascii log/5/trace703 --trace-time --socks5 127.0.0.1:32869 http://127.0.0.1:47 > log/5/stdout703 2> log/5/stderr703 curl returned 132, when expecting 97 703: exit FAILED == Contents of files in the log/5/ dir after test 703 === Start of file server.cmd response 1 Testnum 703 === End of file server.cmd === Start of file socks_server.log 11:16:39.495869 Running IPv4 version 11:16:39.495934 Listening on port 32869 11:16:39.495965 Wrote pid 104082 to log/5/server/socks_server.pid 11:16:39.495988 Wrote port 32869 to log/5/server/socks_server.port === End of file socks_server.log === Start of file valgrind703 ==104312== ==104312== Process terminating with default action of signal 4 (SIGILL) ==104312== Illegal opcode at address 0x10B06D ==104312== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104312== by 0x10B06D: main (tool_main.c:234) === End of file valgrind703 startnew: server/socksd --port 0 --pidfile log/12/server/socks_server.pid --portfile log/12/server/socks_server.port --reqfile log/12/socksd-request.log --logfile log/12/socks_server.log --backend 127.0.0.1 --config log/12/server.cmd RUN: SOCKS server is now running PID 104183 * pid socks => 104183 104183 setenv all_proxy = socks4://127.0.0.1:37829 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/12/valgrind708 ../src/curl -q --output log/12/curl708.out --include --trace-ascii log/12/trace708 --trace-time http://127.0.0.1:44175/708 > log/12/stdout708 2> log/12/stderr708 708: 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 708 === Start of file server.cmd Testnum 708 === End of file server.cmd === Start of file socks_server.log 11:16:40.591584 Running IPv4 version 11:16:40.591631 Listening on port 37829 11:16:40.591651 Wrote pid 104183 to log/12/server/socks_server.pid 11:16:40.591669 Wrote port 37829 to log/12/server/socks_server.port === End of file socks_server.log === Start of file valgrind708 ==104323== ==104323== Process terminating with default action of signal 4 (SIGILL) ==104323== Illegal opcode at address 0x10B06D ==104323== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104323== by 0x10B06D: main (tool_main.c:234) === End of file valgrind708 startnew: server/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 104078 * pid socks => 104078 104078 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/7/valgrind702 ../src/curl -q --output log/7/curl702.out --include --trace-ascii log/7/trace702 --trace-time --socks4 127.0.0.1:35343 http://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/valgrind714 ../src/curl -q --output log/11/curl714.out --include --trace-ascii log/11/trace714 --trace-time ftp://ftp.example.com.714/714 --connect-to ::connect.example.com.714:36091 --proxytunnel --proxy http://127.0.0.1:42527 > log/11/stdout714 2> log/11/stderr714 CMD (33792): ../libtool --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/valgrind709 ../src/curl -q --output log/3/curl709.out --include --trace-ascii log/3/trace709 --trace-time http://127.0.0.1:46313/709 > log/3/stdout709 2> log/3/stderr709 CMD (33792): ../libtool --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/valgrind711 ../src/curl -q --output log/8/curl711.out --include --trace-ascii log/8/trace711 --trace-time ftp://127.0.0.1:43509/711 > log/8/stdout711 2> log/8/stderr711 CMD (33792): ../libtool --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/valgrind710 ../src/curl -q --output log/6/curl710.out --include --trace-ascii log/6/trace710 --trace-time http://127.0.0.1:41583/710 --proxy socks5://127.0.0.1:42183 > log/6/stdout710 2> log/6/stderr710 CMD (33792): ../libtool --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/valgrind716 ../src/curl -q --output log/10/curl716.out --include --trace-ascii log/10/trace716 --trace-time http://hohoho.example.com:99/716 -x socks5://AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:b@127.0.0.1:44779 > log/10/stdout716 2> log/10/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/8/valgrind723 ../src/curl -q --output log/8/curl723.out --include --trace-ascii log/8/trace723 --trace-time --ipfs-gateway http://nonexisting,local:8080 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout723 2> log/8/stderr723 27.0.0.1:47 > log/7/stdout702 2> log/7/stderr702 curl returned 132, when expecting 97 702: exit FAILED == Contents of files in the log/7/ dir after test 702 === Start of file server.cmd response 91 Testnum 702 === End of file server.cmd === Start of file socks_server.log 11:16:39.399676 Running IPv4 version 11:16:39.399741 Listening on port 35343 11:16:39.399766 Wrote pid 104078 to log/7/server/socks_server.pid 11:16:39.399787 Wrote port 35343 to log/7/server/socks_server.port === End of file socks_server.log === Start of file valgrind702 ==104310== ==104310== Process terminating with default action of signal 4 (SIGILL) ==104310== Illegal opcode at address 0x10B06D ==104310== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104310== by 0x10B06D: main (tool_main.c:234) === End of file valgrind702 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/11/valgrind714 ../src/curl -q --output log/11/curl714.out --include --trace-ascii log/11/trace714 --trace-time ftp://ftp.example.com.714/714 --connect-to ::connect.example.com.714:36091 --proxytunnel --proxy http://127.0.0.1:42527 > log/11/stdout714 2> log/11/stderr714 714: 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 714 === Start of file server.cmd Testnum 714 === End of file server.cmd === Start of file valgrind714 ==104648== ==104648== Process terminating with default action of signal 4 (SIGILL) ==104648== Illegal opcode at address 0x10B06D ==104648== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104648== by 0x10B06D: main (tool_main.c:234) === End of file valgrind714 startnew: server/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 104201 * pid socks => 104201 104201 setenv http_proxy = socks5://127.0.0.1:40821 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/3/valgrind709 ../src/curl -q --output log/3/curl709.out --include --trace-ascii log/3/trace709 --trace-time http://127.0.0.1:46313/709 > log/3/stdout709 2> log/3/stderr709 709: 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 709 === Start of file server.cmd Testnum 709 === End of file server.cmd === Start of file socks_server.log 11:16:40.723143 Running IPv4 version 11:16:40.723190 Listening on port 40821 11:16:40.723210 Wrote pid 104201 to log/3/server/socks_server.pid 11:16:40.723229 Wrote port 40821 to log/3/server/socks_server.port === End of file socks_server.log === Start of file valgrind709 ==104598== ==104598== Process terminating with default action of signal 4 (SIGILL) ==104598== Illegal opcode at address 0x10B06D ==104598== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104598== by 0x10B06D: main (tool_main.c:234) === End of file valgrind709 startnew: server/socksd --port 0 --pidfile log/8/server/socks_server.pid --portfile log/8/server/socks_server.port --reqfile log/8/socksd-request.log --logfile log/8/socks_server.log --backend 127.0.0.1 --config log/8/server.cmd RUN: SOCKS server is now running PID 104252 * pid socks => 104252 104252 setenv all_proxy = socks5://127.0.0.1:45861 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/8/valgrind711 ../src/curl -q --output log/8/curl711.out --include --trace-ascii log/8/trace711 --trace-time ftp://127.0.0.1:43509/711 > log/8/stdout711 2> log/8/stderr711 711: 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 711 === Start of file server.cmd Testnum 711 === End of file server.cmd === Start of file socks_server.log 11:16:40.935913 Running IPv4 version 11:16:40.935957 Listening on port 45861 11:16:40.935977 Wrote pid 104252 to log/8/server/socks_server.pid 11:16:40.935993 Wrote port 45861 to log/8/server/socks_server.port === End of file socks_server.log === Start of file valgrind711 ==104700== ==104700== Process terminating with default action of signal 4 (SIGILL) ==104700== Illegal opcode at address 0x10B06D ==104700== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104700== by 0x10B06D: main (tool_main.c:234) === End of file valgrind711 startnew: server/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 104251 * pid socks => 104251 104251 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/6/valgrind710 ../src/curl -q --output log/6/curl710.out --include --trace-ascii log/6/trace710 --trace-time http://127.0.0.1:41583/710 --proxy socks5://127.0.0.1:42183 > log/6/stdout710 2> log/6/stderr710 710: 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 710 === Start of file server.cmd Testnum 710 === End of file server.cmd === Start of file socks_server.log 11:16:40.935711 Running IPv4 version 11:16:40.935762 Listening on port 42183 11:16:40.935782 Wrote pid 104251 to log/6/server/socks_server.pid 11:16:40.935798 Wrote port 42183 to log/6/server/socks_server.port === End of file socks_server.log === Start of file valgrind710 ==104701== ==104701== Process terminating with default action of signal 4 (SIGILL) ==104701== Illegal opcode at address 0x10B06D ==104701== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104701== by 0x10B06D: main (tool_main.c:234) === End of file valgrind710 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/10/valgrind716 ../src/curl -q --output log/10/curl716.out --include --trace-ascii log/10/trace716 --trace-time http://hohoho.example.com:99/716 -x socks5://AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:b@127.0.0.1:44779 > log/10/stdout716 2> log/10/stderr716 curl returned 132, when expecting 97 716: exit FAILED == Contents of files in the log/10/ dir after test 716 === Start of file server.cmd method 2 Testnum 716 === End of file server.cmd === Start of file valgrind716 ==104795== ==104795== Process terminating with default action of signal 4 (SIGILL) ==104795== Illegal opcode at address 0x10B06D ==104795== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104795== by 0x10B06D: main (tool_main.c:234) === End of file valgrind716 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/8/valgrind723 ../src/curl CMD (33792): ../libtool --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/valgrind721 ../src/curl -q --output log/11/curl721.out --include --trace-ascii log/11/trace721 --trace-time http://this.is.a.host.name:35843/721 --proxy socks5h://127.0.0.1:35239 > log/11/stdout721 2> log/11/stderr721 CMD (33792): ../libtool --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/valgrind712 ../src/curl -q --output log/9/curl712.out --include --trace-ascii log/9/trace712 --trace-time ftp://127.0.0.1:39811/712 --proxy socks5://127.0.0.1:38009 > log/9/stdout712 2> log/9/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/5/valgrind718 ../src/curl -q --output log/5/curl718.out --include --trace-ascii log/5/trace718 --trace-time http://test.remote.haxx.se.718:8990/path/7180002 --proxy http://127.0.0.1:33519 --proxytunnel > log/5/stdout718 2> log/5/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/2/valgrind713 ../src/curl -q --output log/2/curl713.out --include --trace-ascii log/2/trace713 --trace-time ftp://ftp.example.com/713 --connect-to ::127.0.0.1:42239 --proxy socks5://127.0.0.1:44091 > log/2/stdout713 2> log/2/stderr713 CMD (33792): ../libtool --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/valgrind720 ../src/curl -q --output log/7/curl720.out --include --trace-ascii log/7/trace720 --trace-time http://12.34.56.78:35853/720 --proxy socks5h://127.0.0.1:35343 > log/7/stdout720 2> log/7/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/12/valgrind719 ../src/curl -q --output log/12/curl719.out --include --trace-ascii log/12/trace719 --trace-time http://[2200::33]:44175/719 --proxy socks5h://127.0.0.1:37829 > log/12/stdout719 2> log/12/stderr719 CMD (33792): ../libtool --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/valgrind722 ../src/curl -q --output log/3/curl722.out --include --trace-ascii log/3/trace722 --trace-time --ipfs-gateway http://127.0.0.1:46313 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/3/stdout722 2> log/3/stderr722 -q --output log/8/curl723.out --include --trace-ascii log/8/trace723 --trace-time --ipfs-gateway http://nonexisting,local:8080 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout723 2> log/8/stderr723 curl returned 132, when expecting 43 723: exit FAILED == Contents of files in the log/8/ dir after test 723 === Start of file server.cmd Testnum 723 === End of file server.cmd === Start of file valgrind723 ==104860== ==104860== Process terminating with default action of signal 4 (SIGILL) ==104860== Illegal opcode at address 0x10B06D ==104860== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104860== by 0x10B06D: main (tool_main.c:234) === End of file valgrind723 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/11/valgrind721 ../src/curl -q --output log/11/curl721.out --include --trace-ascii log/11/trace721 --trace-time http://this.is.a.host.name:35843/721 --proxy socks5h://127.0.0.1:35239 > log/11/stdout721 2> log/11/stderr721 721: 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 721 === Start of file server.cmd Testnum 721 === End of file server.cmd === Start of file valgrind721 ==104858== ==104858== Process terminating with default action of signal 4 (SIGILL) ==104858== Illegal opcode at address 0x10B06D ==104858== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104858== by 0x10B06D: main (tool_main.c:234) === End of file valgrind721 startnew: server/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 104253 * pid socks => 104253 104253 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/9/valgrind712 ../src/curl -q --output log/9/curl712.out --include --trace-ascii log/9/trace712 --trace-time ftp://127.0.0.1:39811/712 --proxy socks5://127.0.0.1:38009 > log/9/stdout712 2> log/9/stderr712 712: 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 712 === Start of file server.cmd Testnum 712 === End of file server.cmd === Start of file socks_server.log 11:16:40.080841 Running IPv4 version 11:16:40.080892 Listening on port 38009 11:16:40.080912 Wrote pid 104253 to log/9/server/socks_server.pid 11:16:40.080928 Wrote port 38009 to log/9/server/socks_server.port === End of file socks_server.log === Start of file valgrind712 ==104855== ==104855== Process terminating with default action of signal 4 (SIGILL) ==104855== Illegal opcode at address 0x10B06D ==104855== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104855== by 0x10B06D: main (tool_main.c:234) === End of file valgrind712 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/5/valgrind718 ../src/curl -q --output log/5/curl718.out --include --trace-ascii log/5/trace718 --trace-time http://test.remote.haxx.se.718:8990/path/7180002 --proxy http://127.0.0.1:33519 --proxytunnel > log/5/stdout718 2> log/5/stderr718 718: 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 718 === Start of file server.cmd Testnum 718 === End of file server.cmd === Start of file valgrind718 ==104862== ==104862== Process terminating with default action of signal 4 (SIGILL) ==104862== Illegal opcode at address 0x10B06D ==104862== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104862== by 0x10B06D: main (tool_main.c:234) === End of file valgrind718 startnew: server/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 104304 * pid socks => 104304 104304 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/2/valgrind713 ../src/curl -q --output log/2/curl713.out --include --trace-ascii log/2/trace713 --trace-time ftp://ftp.example.com/713 --connect-to ::127.0.0.1:42239 --proxy socks5://127.0.0.1:44091 > log/2/stdout713 2> log/2/stderr713 713: 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 713 === Start of file server.cmd Testnum 713 === End of file server.cmd === Start of file socks_server.log 11:16:40.406509 Running IPv4 version 11:16:40.406563 Listening on port 44091 11:16:40.406584 Wrote pid 104304 to log/2/server/socks_server.pid 11:16:40.406601 Wrote port 44091 to log/2/server/socks_server.port === End of file socks_server.log === Start of file valgrind713 ==104861== ==104861== Process terminating with default action of signal 4 (SIGILL) ==104861== Illegal opcode at address 0x10B06D ==104861== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104861== by 0x10B06D: main (tool_main.c:234) === End of file valgrind713 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/7/valgrind720 ../src/curl -q --output log/7/curl720.out --include --trace-ascii log/7/trace720 --trace-time http://12.34.56.78:35853/720 --proxy socks5h://127.0.0.1:35343 > log/7/stdout720 2> log/7/stderr720 720: 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 720 === Start of file server.cmd Testnum 720 === End of file server.cmd === Start of file valgrind720 ==104857== ==104857== Process terminating with default action of signal 4 (SIGILL) ==104857== Illegal opcode at address 0x10B06D ==104857== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104857== by 0x10B06D: main (tool_main.c:234) === End of file valgrind720 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/12/valgrind719 ../src/curl -q --output log/12/curl719.out --include --trace-ascii log/12/trace719 --trace-time http://[2200::33]:44175/719 --proxy socks5h://127.0.0.1:37829 > log/12/stdout719 2> log/12/stderr719 719: 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 719 === Start of file server.cmd Testnum 719 === End of file server.cmd === Start of file valgrind719 ==104856== ==104856== Process terminating with default action of signal 4 (SIGILL) ==104856== Illegal opcode at address 0x10B06D ==104856== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104856== by 0x10B06D: main (tool_main.c:234) === End of file valgrind719 test 0722...[IPFS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/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/4/valgrind717 ../src/curl -q --output log/4/curl717.out --include --trace-ascii log/4/trace717 --trace-time http://127.0.0.1:1/717 -x socks5://uz3r:p4ssworm@127.0.0.1:45859 > log/4/stdout717 2> log/4/stderr717 CMD (0): ../src/curl --max-time 13 --output log/1/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:33795/verifiedserver" 2>log/1/http2_verify.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/8/valgrind726 ../src/curl -q --output log/8/curl726.out --include --trace-ascii log/8/trace726 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout726 2> log/8/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/2/valgrind730 ../src/curl -q --output log/2/curl730.out --include --trace-ascii log/2/trace730 --trace-time --ipfs-gateway http://127.0.0.1:44205/foo/bar ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/2/stdout730 2> log/2/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/3/valgrind733 ../src/curl -q --output log/3/curl733.out --include --trace-ascii log/3/trace733 --trace-time --ipfs-gateway http://127.0.0.1:46313 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/3/stdout733 2> log/3/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/11/valgrind727 ../src/curl -q --output log/11/curl727.out --include --trace-ascii log/11/trace727 --trace-time --ipfs-gateway http://127.0.0.1:35843 ipns://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout727 2> log/11/stderr727 CMD (33792): ../libtool --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/valgrind732 ../src/curl -q --output log/12/curl732.out --include --trace-ascii log/12/trace732 --trace-time --ipfs-gateway http://127.0.0.1:44175 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b" > log/12/stdout732 2> log/12/stderr732 CMD (33792): ../libtool --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/valgrind734 ../src/curl -q --output log/4/curl734.out --include --trace-ascii log/4/trace734 --trace-time --ipfs-gateway http://127.0.0.1:41947/some/path "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/4/stdout734 2> log/4/stderr734 CMD (33792): ../libtool --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/valgrind728 ../src/curl -q --output log/9/curl728.out --include --trace-ascii log/9/trace728 --trace-time --no-progress-meter --location --proxy socks5h://127.0.0.1:38009 http://127.0.0.1:40247/728 > log/9/stdout728 2> log/9/stderr728 CMD (33792): ../libtool --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/valgrind729 ../src/curl -q --output log/5/curl729.out --include --trace-ascii log/5/trace729 --trace-time http://fake --limit-rate 1 -x socks4a://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@127.0.0.1:32869 > log/5/stdout729 2> log/5/stderr729 algrind.supp --num-callers=16 --log-file=log/3/valgrind722 ../src/curl -q --output log/3/curl722.out --include --trace-ascii log/3/trace722 --trace-time --ipfs-gateway http://127.0.0.1:46313 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/3/stdout722 2> log/3/stderr722 722: 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 722 === Start of file server.cmd Testnum 722 === End of file server.cmd === Start of file valgrind722 ==104859== ==104859== Process terminating with default action of signal 4 (SIGILL) ==104859== Illegal opcode at address 0x10B06D ==104859== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104859== by 0x10B06D: main (tool_main.c:234) === End of file valgrind722 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/4/valgrind717 ../src/curl -q --output log/4/curl717.out --include --trace-ascii log/4/trace717 --trace-time http://127.0.0.1:1/717 -x socks5://uz3r:p4ssworm@127.0.0.1:45859 > log/4/stdout717 2> log/4/stderr717 717: 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 717 === Start of file server.cmd method 2 user uz3r password p4ssworm backendport 41947 Testnum 717 === End of file server.cmd === Start of file valgrind717 ==104854== ==104854== Process terminating with default action of signal 4 (SIGILL) ==104854== Illegal opcode at address 0x10B06D ==104854== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==104854== by 0x10B06D: main (tool_main.c:234) === End of file valgrind717 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/8/valgrind726 ../src/curl -q --output log/8/curl726.out --include --trace-ascii log/8/trace726 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout726 2> log/8/stderr726 curl returned 132, when expecting 37 726: exit FAILED == Contents of files in the log/8/ dir after test 726 === Start of file server.cmd Testnum 726 === End of file server.cmd === Start of file valgrind726 ==105386== ==105386== Process terminating with default action of signal 4 (SIGILL) ==105386== Illegal opcode at address 0x10B06D ==105386== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105386== by 0x10B06D: main (tool_main.c:234) === End of file valgrind726 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/2/valgrind730 ../src/curl -q --output log/2/curl730.out --include --trace-ascii log/2/trace730 --trace-time --ipfs-gateway http://127.0.0.1:44205/foo/bar ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/2/stdout730 2> log/2/stderr730 730: 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 730 === Start of file server.cmd Testnum 730 === End of file server.cmd === Start of file valgrind730 ==105440== ==105440== Process terminating with default action of signal 4 (SIGILL) ==105440== Illegal opcode at address 0x10B06D ==105440== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105440== by 0x10B06D: main (tool_main.c:234) === End of file valgrind730 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/3/valgrind733 ../src/curl -q --output log/3/curl733.out --include --trace-ascii log/3/trace733 --trace-time --ipfs-gateway http://127.0.0.1:46313 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/3/stdout733 2> log/3/stderr733 733: 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 733 === Start of file server.cmd Testnum 733 === End of file server.cmd === Start of file valgrind733 ==105484== ==105484== Process terminating with default action of signal 4 (SIGILL) ==105484== Illegal opcode at address 0x10B06D ==105484== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105484== by 0x10B06D: main (tool_main.c:234) === End of file valgrind733 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/11/valgrind727 ../src/curl -q --output log/11/curl727.out --include --trace-ascii log/11/trace727 --trace-time --ipfs-gateway http://127.0.0.1:35843 ipns://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout727 2> log/11/stderr727 727: 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 727 === Start of file server.cmd Testnum 727 === End of file server.cmd === Start of file valgrind727 ==105437== ==105437== Process terminating with default action of signal 4 (SIGILL) ==105437== Illegal opcode at address 0x10B06D ==105437== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105437== by 0x10B06D: main (tool_main.c:234) === End of file valgrind727 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/12/valgrind732 ../src/curl -q --output log/12/curl732.out --include --trace-ascii log/12/trace732 --trace-time --ipfs-gateway http://127.0.0.1:44175 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b" > log/12/stdout732 2> log/12/stderr732 732: 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 732 === Start of file server.cmd Testnum 732 === End of file server.cmd === Start of file valgrind732 ==105474== ==105474== Process terminating with default action of signal 4 (SIGILL) ==105474== Illegal opcode at address 0x10B06D ==105474== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105474== by 0x10B06D: 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/4/valgrind734 ../src/curl -q --output log/4/curl734.out --include --trace-ascii log/4/trace734 --trace-time --ipfs-gateway http://127.0.0.1:41947/some/path "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/4/stdout734 2> log/4/stderr734 734: 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 734 === Start of file server.cmd Testnum 734 === End of file server.cmd === Start of file valgrind734 ==105509== ==105509== Process terminating with default action of signal 4 (SIGILL) ==105509== Illegal opcode at address 0x10B06D ==105509== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105509== by 0x10B06D: main (tool_main.c:234) === End of file valgrind734 CMD (33792): ../libtool --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/valgrind715 ../src/curl -q --output log/1/curl715.out --include --trace-ascii log/1/trace715 --trace-time ftp://ftp.example.com.715/715 --connect-to ::connect.example.com.715:35701 --proxytunnel --proxy 127.0.0.1:33795 --preproxy socks5://127.0.0.1:36265 > log/1/stdout715 2> log/1/stderr715 CMD (33792): ../libtool --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/valgrind724 ../src/curl -q --output log/6/curl724.out --include --trace-ascii log/6/trace724 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/6/stdout724 2> log/6/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/8/valgrind735 ../src/curl -q --output log/8/curl735.out --include --trace-ascii log/8/trace735 --trace-time --ipfs-gateway http://127.0.0.1:33791/some/path "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/8/stdout735 2> log/8/stderr735 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/9/valgrind728 ../src/curl -q --output log/9/curl728.out --include --trace-ascii log/9/trace728 --trace-time --no-progress-meter --location --proxy socks5h://127.0.0.1:38009 http://127.0.0.1:40247/728 > log/9/stdout728 2> log/9/stderr728 728: stderr FAILED: --- log/9/check-expected 2024-05-23 11:16:43.034193014 +0200 +++ log/9/check-generated 2024-05-23 11:16:43.034193014 +0200 @@ -1 +0,0 @@ -curl: (97) SOCKS5: the destination hostname is too long to be resolved remotely by the proxy.[LF] == Contents of files in the log/9/ 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.[LF] === End of file check-expected === Start of file server.cmd Testnum 728 === End of file server.cmd === Start of file valgrind728 ==105450== ==105450== Process terminating with default action of signal 4 (SIGILL) ==105450== Illegal opcode at address 0x10B06D ==105450== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105450== by 0x10B06D: main (tool_main.c:234) === End of file valgrind728 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/5/valgrind729 ../src/curl -q --output log/5/curl729.out --include --trace-ascii log/5/trace729 --trace-time http://fake --limit-rate 1 -x socks4a://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@127.0.0.1:32869 > log/5/stdout729 2> log/5/stderr729 curl returned 132, when expecting 97 729: exit FAILED == Contents of files in the log/5/ dir after test 729 === Start of file server.cmd Testnum 729 === End of file server.cmd === Start of file valgrind729 ==105438== ==105438== Process terminating with default action of signal 4 (SIGILL) ==105438== Illegal opcode at address 0x10B06D ==105438== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105438== by 0x10B06D: main (tool_main.c:234) === End of file valgrind729 startnew: perl -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: ../src/curl --max-time 13 --output log/1/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:33795/verifiedserver" 2>log/1/http2_verify.log RUN: HTTP2 server is on PID 104793 port 33795 * pid http-proxy => 104793 104793 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/1/valgrind715 ../src/curl -q --output log/1/curl715.out --include --trace-ascii log/1/trace715 --trace-time ftp://ftp.example.com.715/715 --connect-to ::connect.example.com.715:35701 --proxytunnel --proxy 127.0.0.1:33795 --preproxy socks5://127.0.0.1:36265 > log/1/stdout715 2> log/1/stderr715 715: 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 715 === Start of file http2_server.log 11:16:41.075352 Run as proxy, CONNECT to host 127.0.0.1 11:16:41.075543 Running HTTP IPv4 version on port 33795 11:16:41.075579 Wrote pid 104793 to log/1/server/http2_server.pid 11:16:41.075602 Wrote port 33795 to log/1/server/http2_server.port 11:16:42.077115 ====> Client connect 11:16:42.077136 accept_connection 3 returned 4 11:16:42.077149 accept_connection 3 returned 0 11:16:42.077162 Read 92 bytes 11:16:42.077170 Process 92 bytes request 11:16:42.077185 Got request: GET /verifiedserver HTTP/1.1 11:16:42.077192 Are-we-friendly question received 11:16:42.077211 Wrote request (92 bytes) input to log/1/proxy.input 11:16:42.077229 Identifying ourselves as friends 11:16:42.077287 Response sent (57 bytes) and written to log/1/proxy.response 11:16:42.077297 special request received, no persistency 11:16:42.077303 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:33795... * Connected to 127.0.0.1 (127.0.0.1) port 33795 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33795 > User-Agent: curl/8.8.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: 104793 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 104793 === End of file proxy.response === Start of file server.cmd Testnum 715 === End of file server.cmd === Start of file valgrind715 ==105836== ==105836== Process terminating with default action of signal 4 (SIGILL) ==105836== Illegal opcode at address 0x10B06D ==105836== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105836== by 0x10B06D: main (tool_main.c:234) === End of file valgrind715 setenv HOME = /startdir/src/build-curl/tests/log/6 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/6/valgrind724 ../src/curl -q --output log/6/curl724.out --include --trace-ascii log/6/trace724 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/6/stdout724 2> log/6/stderr724 724: 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 724 === Start of file server.cmd Testnum 724 === End of file server.cmd === Start of file valgrind724 ==105279== ==105279== Process terminating with default action of signal 4 (SIGILL) ==105279== Illegal opcode at address 0x10B06D ==105279== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105279== by 0x10B06D: main (tool_main.c:234) === End of file valgrind724 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/8/valgrind735 ../src/curl -q --output log/8/curl735.out --include --trace-ascii log/8/trace735 --trace-time --ipfs-gateway http://127.0.0.1:33791/some/path "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/8/stdout735 2> log/8/stderr735 735: 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 735 === StarCMD (33792): ../libtool --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/valgrind725 ../src/curl -q --output log/10/curl725.out --include --trace-ascii log/10/trace725 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/10/stdout725 2> log/10/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/2/valgrind736 ../src/curl -q --output log/2/curl736.out --include --trace-ascii log/2/trace736 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/2/stdout736 2> log/2/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/12/valgrind739 ../src/curl -q --output log/12/curl739.out --include --trace-ascii log/12/trace739 --trace-time --ipfs-gateway "http://127.0.0.1:44175/some/path?biz=baz" "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/12/stdout739 2> log/12/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/3/valgrind737 ../src/curl -q --output log/3/curl737.out --include --trace-ascii log/3/trace737 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/3/stdout737 2> log/3/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/11/valgrind738 ../src/curl -q --output log/11/curl738.out --include --trace-ascii log/11/trace738 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout738 2> log/11/stderr738 CMD (33792): ../libtool --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/valgrind742 ../src/curl -q --output log/5/curl742.out --include --trace-ascii log/5/trace742 --trace-time http://cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:33519 -x socks5h://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@127.0.0.1:32869 > log/5/stdout742 2> log/5/stderr742 CMD (33792): ../libtool --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/valgrind731 ../src/curl -q --output log/7/curl731.out --include --trace-ascii log/7/trace731 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/7/stdout731 2> log/7/stderr731 t of file server.cmd Testnum 735 === End of file server.cmd === Start of file valgrind735 ==105896== ==105896== Process terminating with default action of signal 4 (SIGILL) ==105896== Illegal opcode at address 0x10B06D ==105896== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105896== by 0x10B06D: main (tool_main.c:234) === End of file valgrind735 setenv HOME = /startdir/src/build-curl/tests/log/10 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/10/valgrind725 ../src/curl -q --output log/10/curl725.out --include --trace-ascii log/10/trace725 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/10/stdout725 2> log/10/stderr725 curl returned 132, when expecting 3 725: exit FAILED == Contents of files in the log/10/ dir after test 725 === Start of file server.cmd Testnum 725 === End of file server.cmd === Start of file valgrind725 ==105297== ==105297== Process terminating with default action of signal 4 (SIGILL) ==105297== Illegal opcode at address 0x10B06D ==105297== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105297== by 0x10B06D: main (tool_main.c:234) === End of file valgrind725 setenv IPFS_PATH = log/2/.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/2/valgrind736 ../src/curl -q --output log/2/curl736.out --include --trace-ascii log/2/trace736 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/2/stdout736 2> log/2/stderr736 736: 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 736 === Start of file server.cmd Testnum 736 === End of file server.cmd === Start of file valgrind736 ==105939== ==105939== Process terminating with default action of signal 4 (SIGILL) ==105939== Illegal opcode at address 0x10B06D ==105939== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105939== by 0x10B06D: main (tool_main.c:234) === End of file valgrind736 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/12/valgrind739 ../src/curl -q --output log/12/curl739.out --include --trace-ascii log/12/trace739 --trace-time --ipfs-gateway "http://127.0.0.1:44175/some/path?biz=baz" "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/12/stdout739 2> log/12/stderr739 curl returned 132, when expecting 3 739: exit FAILED == Contents of files in the log/12/ dir after test 739 === Start of file server.cmd Testnum 739 === End of file server.cmd === Start of file valgrind739 ==106038== ==106038== Process terminating with default action of signal 4 (SIGILL) ==106038== Illegal opcode at address 0x10B06D ==106038== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106038== by 0x10B06D: main (tool_main.c:234) === End of file valgrind739 setenv IPFS_PATH = log/3/.ipfs/ test 0737...[IPFS with IPFS_PATH set, with 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/valgrind737 ../src/curl -q --output log/3/curl737.out --include --trace-ascii log/3/trace737 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/3/stdout737 2> log/3/stderr737 737: 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 737 === Start of file server.cmd Testnum 737 === End of file server.cmd === Start of file valgrind737 ==105985== ==105985== Process terminating with default action of signal 4 (SIGILL) ==105985== Illegal opcode at address 0x10B06D ==105985== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105985== by 0x10B06D: main (tool_main.c:234) === End of file valgrind737 setenv IPFS_PATH = log/11/.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/11/valgrind738 ../src/curl -q --output log/11/curl738.out --include --trace-ascii log/11/trace738 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout738 2> log/11/stderr738 curl returned 132, when expecting 37 738: exit FAILED == Contents of files in the log/11/ dir after test 738 === Start of file server.cmd Testnum 738 === End of file server.cmd === Start of file valgrind738 ==105989== ==105989== Process terminating with default action of signal 4 (SIGILL) ==105989== Illegal opcode at address 0x10B06D ==105989== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105989== by 0x10B06D: main (tool_main.c:234) === End of file valgrind738 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/5/valgrind742 ../src/curl -q --output log/5/curl742.out --include --trace-ascii log/5/trace742 --trace-time http://cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:33519 -x socks5h://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@127.0.0.1:32869 > log/5/stdout742 2> log/5/stderr742 742: 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 742 === Start of file server.cmd method 2 user aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa password bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb backendport 33519 Testnum 742 === End of file server.cmd === Start of file valgrind742 ==106111== ==106111== Process terminating with default action of signal 4 (SIGILL) ==106111== Illegal opcode at address 0x10B06D ==106111== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106111== by 0x10B06D: main (tool_main.c:234) === End of file valgrind742 setenv HOME = /startdir/src/build-curl/tests/log/7 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/7/valgrind731 ../src/curl -q --output log/7/curl731.out --include --trace-ascii log/7/trace731 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5CMD (33792): ../libtool --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/valgrind803 ../src/curl -q --output log/2/curl803.out --include --trace-ascii log/2/trace803 --trace-time 'imap://127.0.0.1:40175/803;UIDVALIDITY=12345/;MAILINDEX=123' -u user:secret > log/2/stdout803 2> log/2/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/3/valgrind805 ../src/curl -q --output log/3/curl805.out --include --trace-ascii log/3/trace805 --trace-time imap://127.0.0.1:42165/805 -T log/3/upload805 -u user:secret > log/3/stdout805 2> log/3/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/7/valgrind808 ../src/curl -q --output log/7/curl808.out --include --trace-ascii log/7/trace808 --trace-time imap://127.0.0.1:39443 -u user:secret -X 'EXAMINE 808' > log/7/stdout808 2> log/7/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/2/valgrind809 ../src/curl -q --output log/2/curl809.out --include --trace-ascii log/2/trace809 --trace-time imap://127.0.0.1:40175 -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)' > log/2/stdout809 2> log/2/stderr809 CMD (33792): ../libtool --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/valgrind810 ../src/curl -q --output log/3/curl810.out --include --trace-ascii log/3/trace810 --trace-time imap://127.0.0.1:42165/810?NEW -u user:secret > log/3/stdout810 2> log/3/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/4/valgrind740 ../src/curl -q --output log/4/curl740.out --include --trace-ascii log/4/trace740 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/4/stdout740 2> log/4/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/7/valgrind811 ../src/curl -q --output log/7/curl811.out --include --trace-ascii log/7/trace811 --trace-time imap://127.0.0.1:39443 -u user:secret -X 'CREATE 811' > log/7/stdout811 2> log/7/stderr811 CMD (33792): ../libtool --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/valgrind741 ../src/curl -q --output log/9/curl741.out --include --trace-ascii log/9/trace741 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout741 2> log/9/stderr741 ofkeevoqland7kopseiod6pzqvjg7u > log/7/stdout731 2> log/7/stderr731 731: 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 731 === Start of file server.cmd Testnum 731 === End of file server.cmd === Start of file valgrind731 ==105461== ==105461== Process terminating with default action of signal 4 (SIGILL) ==105461== Illegal opcode at address 0x10B06D ==105461== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==105461== by 0x10B06D: main (tool_main.c:234) === End of file valgrind731 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/2/valgrind803 ../src/curl -q --output log/2/curl803.out --include --trace-ascii log/2/trace803 --trace-time 'imap://127.0.0.1:40175/803;UIDVALIDITY=12345/;MAILINDEX=123' -u user:secret > log/2/stdout803 2> log/2/stderr803 803: 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 803 === Start of file server.cmd Testnum 803 === End of file server.cmd === Start of file valgrind803 ==106291== ==106291== Process terminating with default action of signal 4 (SIGILL) ==106291== Illegal opcode at address 0x10B06D ==106291== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106291== by 0x10B06D: main (tool_main.c:234) === End of file valgrind803 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/3/valgrind805 ../src/curl -q --output log/3/curl805.out --include --trace-ascii log/3/trace805 --trace-time imap://127.0.0.1:42165/805 -T log/3/upload805 -u user:secret > log/3/stdout805 2> log/3/stderr805 805: 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 805 === 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 ==106333== ==106333== Process terminating with default action of signal 4 (SIGILL) ==106333== Illegal opcode at address 0x10B06D ==106333== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106333== by 0x10B06D: main (tool_main.c:234) === End of file valgrind805 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/7/valgrind808 ../src/curl -q --output log/7/curl808.out --include --trace-ascii log/7/trace808 --trace-time imap://127.0.0.1:39443 -u user:secret -X 'EXAMINE 808' > log/7/stdout808 2> log/7/stderr808 808: 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 808 === Start of file server.cmd Testnum 808 === End of file server.cmd === Start of file valgrind808 ==106405== ==106405== Process terminating with default action of signal 4 (SIGILL) ==106405== Illegal opcode at address 0x10B06D ==106405== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106405== by 0x10B06D: main (tool_main.c:234) === End of file valgrind808 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/2/valgrind809 ../src/curl -q --output log/2/curl809.out --include --trace-ascii log/2/trace809 --trace-time imap://127.0.0.1:40175 -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)' > log/2/stdout809 2> log/2/stderr809 809: 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 809 === Start of file server.cmd Testnum 809 === End of file server.cmd === Start of file valgrind809 ==106454== ==106454== Process terminating with default action of signal 4 (SIGILL) ==106454== Illegal opcode at address 0x10B06D ==106454== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106454== by 0x10B06D: main (tool_main.c:234) === End of file valgrind809 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/3/valgrind810 ../src/curl -q --output log/3/curl810.out --include --trace-ascii log/3/trace810 --trace-time imap://127.0.0.1:42165/810?NEW -u user:secret > log/3/stdout810 2> log/3/stderr810 810: 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 810 === Start of file server.cmd Testnum 810 === End of file server.cmd === Start of file valgrind810 ==106504== ==106504== Process terminating with default action of signal 4 (SIGILL) ==106504== Illegal opcode at address 0x10B06D ==106504== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106504== by 0x10B06D: main (tool_main.c:234) === End of file valgrind810 setenv HOME = /startdir/src/build-curl/tests/log/4 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/4/valgrind740 ../src/curl -q --output log/4/curl740.out --include --trace-ascii log/4/trace740 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/4/stdout740 2> log/4/stderr740 740: 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 740 === Start of file server.cmd Testnum 740 === End of file server.cmd === Start of file valgrind740 ==106084== ==106084== Process terminating with default action of signal 4 (SIGILL) ==106084== Illegal opcode at address 0x10B06D ==106084== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106084== by 0x10B06D: main (tool_main.c:234) === End of file valgrind740 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/7/valgrind811 ../src/curl -q --output log/7/curl811.out --include --trace-ascii log/7/trace811 --trace-time imap://127.0.0.1:39443 -u user:secret -X 'CREATE 811' > log/7/stdout811 2> log/7/stderr811 811: 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 811 === Start of file server.cmd Testnum 811 === End of file server.cmd === Start of file valgrind811 ==106569== ==106569== Process terminating with default action of signal 4 (SIGILL) ==106569== Illegal opcode at address 0x10B06D ==106569== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106569== by 0x10B06D: main (tool_main.c:234) === End of file valgrind811 setenv HOME = /startdir/src/build-curl/tests/log/9 test 0741...[IPFS with malformed gateway URL from multiline gateway file, first line no url] ../libtool --mode=executCMD (33792): ../libtool --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/valgrind812 ../src/curl -q --output log/2/curl812.out --include --trace-ascii log/2/trace812 --trace-time imap://127.0.0.1:40175 -u user:secret -X 'DELETE 812' > log/2/stdout812 2> log/2/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/1/valgrind799 ../src/curl -q --output log/1/curl799.out --include --trace-ascii log/1/trace799 --trace-time 'imap://127.0.0.1:37999/799/;MAILINDEX=1' -u user:secret --login-options AUTH=+LOGIN > log/1/stdout799 2> log/1/stderr799 CMD (33792): ../libtool --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/valgrind813 ../src/curl -q --output log/3/curl813.out --include --trace-ascii log/3/trace813 --trace-time imap://127.0.0.1:42165 -u user:secret -X 'RENAME 666 813' > log/3/stdout813 2> log/3/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/6/valgrind800 ../src/curl -q --output log/6/curl800.out --include --trace-ascii log/6/trace800 --trace-time 'imap://127.0.0.1:36685/800/;MAILINDEX=1' -u '"user:sec"ret{' > log/6/stdout800 2> log/6/stderr800 e /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind741 ../src/curl -q --output log/9/curl741.out --include --trace-ascii log/9/trace741 --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout741 2> log/9/stderr741 curl returned 132, when expecting 3 741: exit FAILED == Contents of files in the log/9/ dir after test 741 === Start of file server.cmd Testnum 741 === End of file server.cmd === Start of file valgrind741 ==106091== ==106091== Process terminating with default action of signal 4 (SIGILL) ==106091== Illegal opcode at address 0x10B06D ==106091== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106091== by 0x10B06D: main (tool_main.c:234) === End of file valgrind741 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/2/valgrind812 ../src/curl -q --output log/2/curl812.out --include --trace-ascii log/2/trace812 --trace-time imap://127.0.0.1:40175 -u user:secret -X 'DELETE 812' > log/2/stdout812 2> log/2/stderr812 812: 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 812 === Start of file server.cmd Testnum 812 === End of file server.cmd === Start of file valgrind812 ==106618== ==106618== Process terminating with default action of signal 4 (SIGILL) ==106618== Illegal opcode at address 0x10B06D ==106618== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106618== by 0x10B06D: main (tool_main.c:234) === End of file valgrind812 startnew: perl -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 37999 (log/1/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:37999/verifiedserver" 2>log/1/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106279 port 37999 * pid imap => 106279 106279 test 0799...[IMAP with --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/1/valgrind799 ../src/curl -q --output log/1/curl799.out --include --trace-ascii log/1/trace799 --trace-time 'imap://127.0.0.1:37999/799/;MAILINDEX=1' -u user:secret --login-options AUTH=+LOGIN > log/1/stdout799 2> log/1/stderr799 799: 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 799 === Start of file imap_server.log 11:16:43.166192 IMAP server listens on port IPv4/37999 11:16:43.166270 logged pid 106279 in log/1/server/imap_server.pid 11:16:43.166292 Awaiting input 11:16:44.146409 ====> Client connect 11:16:44.146523 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.146714 < "A001 CAPABILITY" 11:16:44.146737 > "A001 BAD Command[CR][LF]" 11:16:44.146836 < "A002 LIST "verifiedserver" *" 11:16:44.146855 LIST_imap got "verifiedserver" * 11:16:44.146868 > "* LIST () "/" "WE ROOLZ: 106279"[CR][LF]" 11:16:44.146879 > "A002 OK LIST Completed[CR][LF]" 11:16:44.146886 return proof we are we 11:16:44.192326 < "A003 LOGOUT" 11:16:44.192377 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.192391 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.235658 MAIN sockfilt said DISC 11:16:44.235711 ====> Client disconnected 11:16:44.235752 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.683285 Running IPv4 version 11:16:43.683369 Listening on port 37999 11:16:43.683401 Wrote pid 106283 to log/1/server/imap_sockfilt.pid 11:16:43.683423 Wrote port 37999 to log/1/server/imap_server.port 11:16:43.683438 Received PING (on stdin) 11:16:44.663664 ====> Client connect 11:16:44.663849 Received DATA (on stdin) 11:16:44.663861 > 178 bytes data, server => client 11:16:44.663867 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:44.663873 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:44.663879 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:44.663884 'rve\r\n' 11:16:44.663931 < 17 bytes data, client => server 11:16:44.663937 'A001 CAPABILITY\r\n' 11:16:44.664060 Received DATA (on stdin) 11:16:44.664067 > 18 bytes data, server => client 11:16:44.664072 'A001 BAD Command\r\n' 11:16:44.664108 < 30 bytes data, client => server 11:16:44.664114 'A002 LIST "verifiedserver" *\r\n' 11:16:44.664205 Received DATA (on stdin) 11:16:44.664211 > 34 bytes data, server => client 11:16:44.664216 '* LIST () "/" "WE ROOLZ: 106279"\r\n' 11:16:44.664229 Received DATA (on stdin) 11:16:44.664234 > 24 bytes data, server => client 11:16:44.664240 'A002 OK LIST Completed\r\n' 11:16:44.709488 < 13 bytes data, client => server 11:16:44.709513 'A003 LOGOUT\r\n' 11:16:44.709714 Received DATA (on stdin) 11:16:44.709722 > 36 bytes data, server => client 11:16:44.709729 '* BYE curl IMAP server signing off\r\n' 11:16:44.709745 Received DATA (on stdin) 11:16:44.709751 > 26 bytes data, server => client 11:16:44.709757 'A003 OK LOGOUT completed\r\n' 11:16:44.752913 ====> Client disconnect 11:16:44.753076 Received ACKD (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 ==106654== ==106654== Process terminating with default action of signal 4 (SIGILL) ==106654== Illegal opcode at address 0x10B06D ==106654== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106654== by 0x10B06D: main (tool_main.c:234) === End of file valgrind799 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/3/valgrind813 ../src/curl -q --output log/3/curl813.out --include --trace-ascii log/3/trace813 --trace-time imap://127.0.0.1:42165 -u user:secret -X 'RENAME 666 813' > log/3/stdout813 2> log/3/stderr813 813: 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 813 === Start of file server.cmd Testnum 813 === End of file server.cmd === Start of file valgrind813 ==106696== ==106696== Process terminating with default action of signal 4 (SIGILL) ==106696== Illegal opcode at address 0x10B06D ==106696== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106696== by 0x10B06D: main (tool_main.c:234) === End of file valgrind813 startnew: perl -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 36685 (log/6/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:36685/verifiedserver" 2>log/6/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106286 port 36685 * pid imap => 106286 106286 test 0800...[IMAP FETCH message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/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/8/valgrind801 ../src/curl -q --output log/8/curl801.out --include --trace-ascii log/8/trace801 --trace-time 'imap://127.0.0.1:34637/801/;MAILINDEX=123/;SECTION=1' -u user:secret > log/8/stdout801 2> log/8/stderr801 supp --num-callers=16 --log-file=log/6/valgrind800 ../src/curl -q --output log/6/curl800.out --include --trace-ascii log/6/trace800 --trace-time 'imap://127.0.0.1:36685/800/;MAILINDEX=1' -u '"user:sec"ret{' > log/6/stdout800 2> log/6/stderr800 800: 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 800 === Start of file imap_server.log 11:16:43.305478 IMAP server listens on port IPv4/36685 11:16:43.305548 logged pid 106286 in log/6/server/imap_server.pid 11:16:43.305569 Awaiting input 11:16:44.290322 ====> Client connect 11:16:44.290455 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.290691 < "A001 CAPABILITY" 11:16:44.290720 > "A001 BAD Command[CR][LF]" 11:16:44.290853 < "A002 LIST "verifiedserver" *" 11:16:44.290877 LIST_imap got "verifiedserver" * 11:16:44.290897 > "* LIST () "/" "WE ROOLZ: 106286"[CR][LF]" 11:16:44.290911 > "A002 OK LIST Completed[CR][LF]" 11:16:44.290922 return proof we are we 11:16:44.332325 < "A003 LOGOUT" 11:16:44.332369 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.332380 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.376821 MAIN sockfilt said DISC 11:16:44.376882 ====> Client disconnected 11:16:44.376931 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.822554 Running IPv4 version 11:16:43.822641 Listening on port 36685 11:16:43.822670 Wrote pid 106287 to log/6/server/imap_sockfilt.pid 11:16:43.822691 Wrote port 36685 to log/6/server/imap_server.port 11:16:43.822706 Received PING (on stdin) 11:16:44.807578 ====> Client connect 11:16:44.807783 Received DATA (on stdin) 11:16:44.807792 > 178 bytes data, server => client 11:16:44.807802 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:44.807810 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:44.807818 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:44.807825 'rve\r\n' 11:16:44.807885 < 17 bytes data, client => server 11:16:44.807894 'A001 CAPABILITY\r\n' 11:16:44.808046 Received DATA (on stdin) 11:16:44.808055 > 18 bytes data, server => client 11:16:44.808063 'A001 BAD Command\r\n' 11:16:44.808109 < 30 bytes data, client => server 11:16:44.808117 'A002 LIST "verifiedserver" *\r\n' 11:16:44.808244 Received DATA (on stdin) 11:16:44.808253 > 34 bytes data, server => client 11:16:44.808261 '* LIST () "/" "WE ROOLZ: 106286"\r\n' 11:16:44.808278 Received DATA (on stdin) 11:16:44.808286 > 24 bytes data, server => client 11:16:44.808293 'A002 OK LIST Completed\r\n' 11:16:44.849523 < 13 bytes data, client => server 11:16:44.849557 'A003 LOGOUT\r\n' 11:16:44.849702 Received DATA (on stdin) 11:16:44.849709 > 36 bytes data, server => client 11:16:44.849716 '* BYE curl IMAP server signing off\r\n' 11:16:44.849732 Received DATA (on stdin) 11:16:44.849737 > 26 bytes data, server => client 11:16:44.849743 'A003 OK LOGOUT completed\r\n' 11:16:44.894060 ====> Client disconnect 11:16:44.894261 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 800 === End of file server.cmd === Start of file valgrind800 ==106784== ==106784== Process terminating with default action of signal 4 (SIGILL) ==106784== Illegal opcode at address 0x10B06D ==106784== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106784== by 0x10B06D: main (tool_main.c:234) === End of file valgrind800 startnew: perl -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 34637 (log/8/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:34637/verifiedserver" 2>log/8/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106288 port 34637 * pid imap => 106288 106288 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/8/valgrind801 ../src/curl -q --output log/8/curl801.out --include --trace-ascii log/8/trace801 --trace-time 'imap://127.0.0.1:34637/801/;MAILINDEX=123/;SECTION=1' -u user:secret > log/8/stdout801 2> log/8/stderr801 801: 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 801 === Start of file imap_server.log 11:16:43.498332 IMAP server listens on port IPv4/34637 11:16:43.498411 logged pid 106288 in log/8/server/imap_server.pid 11:16:43.498434 Awaiting input 11:16:44.482318 ====> Client connect 11:16:44.482459 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.482719 < "A001 CAPABILITY" 11:16:44.482751 > "A001 BAD Command[CR][LF]" 11:16:44.482886 < "A002 LIST "verifiedserver" *" 11:16:44.482914 LIST_imap got "verifiedserver" * 11:16:44.482934 > "* LIST () "/" "WE ROOLZ: 106288"[CR][LF]" 11:16:44.482952 > "A002 OK LIST Completed[CR][LF]" 11:16:44.482963 return proof we are we 11:16:44.529329 < "A003 LOGOUT" 11:16:44.529381 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.529397 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.572532 MAIN sockfilt said DISC 11:16:44.572585 ====> Client disconnected 11:16:44.572632 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.015478 Running IPv4 version 11:16:43.015535 Listening on port 34637 11:16:43.015558 Wrote pid 106316 to log/8/server/imap_sockfilt.pid 11:16:43.015575 Wrote port 34637 to log/8/server/imap_server.port 11:16:43.015586 Received PING (on stdin) 11:16:43.999561 ====> Client connect 11:16:43.999793 Received DATA (on stdin) 11:16:43.999804 > 178 bytes data, server => client 11:16:43.999814 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:43.999823 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:43.999831 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:43.999838 'rve\r\n' 11:16:43.999912 < 17 bytes data, client => server 11:16:43.999922 'A001 CAPABILITY\r\n' 11:16:44.000078 Received DATA (on stdin) 11:16:44.000086 > 18 bytes data, server => client 11:16:44.000093 'A001 BAD Command\r\n' 11:16:44.000138 < 30 bytes data, client => server 11:16:44.000148 'A002 LIST "verifiedserver" *\r\n' 11:16:44.000288 Received DATA (on stdin) 11:16:44.000299 > 34 bytes data, server => client 11:16:44.000308 '* LIST () "/" "WE ROOLZ: 106288"\r\n' 11:16:44.000329 Received DATA (on stdin) 11:16:44.000336 > 24 bytes data, server => client 11:16:44.000344 'A002 OK LIST Completed\r\n' 11:16:44.046486 < 13 bytes data, client => server 11:16:44.046513 'A003 LOGOUT\r\n' 11:16:44.046723 Received DATA (on stdin) 11:16:44.046732 > 36 bytes data, server => client 11:16:44.046741 '* BYE curl IMAP server signing off\r\n' 11:16:44.046762 Received DATA (on stdin) 11:16:44.046770 > 26 bytes data, server => client 11:16:44.046778 'A003 OK LOGOUT completed\r\n' 11:16:44.089749 ====> Client disconnect 11:16:44.089966 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 801 === End of file server.cmd === Start of file valgrind801 ==106910== ==106910== Process terminating with default action of signal 4 (SIGILL) ==106910== Illegal opcode at address 0x10B06D ==106910== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106910== by 0x10B06D: maiCMD (33792): ../libtool --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/valgrind802 ../src/curl -q --output log/10/curl802.out --include --trace-ascii log/10/trace802 --trace-time 'imap://127.0.0.1:46689/802;UIDVALIDITY=3857529045/;MAILINDEX=123/;SECTION=TEXT' -u user:secret > log/10/stdout802 2> log/10/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/12/valgrind804 ../src/curl -q --output log/12/curl804.out --include --trace-ascii log/12/trace804 --trace-time 'imap://127.0.0.1:38285/804/;MAILINDEX=123/;SECTION=1' 'imap://127.0.0.1:38285/804/;MAILINDEX=456/;SECTION=2.3' -u user:secret > log/12/stdout804 2> log/12/stderr804 n (tool_main.c:234) === End of file valgrind801 startnew: perl -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 46689 (log/10/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:46689/verifiedserver" 2>log/10/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106289 port 46689 * pid imap => 106289 106289 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/10/valgrind802 ../src/curl -q --output log/10/curl802.out --include --trace-ascii log/10/trace802 --trace-time 'imap://127.0.0.1:46689/802;UIDVALIDITY=3857529045/;MAILINDEX=123/;SECTION=TEXT' -u user:secret > log/10/stdout802 2> log/10/stderr802 802: 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 802 === Start of file imap_server.log 11:16:43.502357 IMAP server listens on port IPv4/46689 11:16:43.502414 logged pid 106289 in log/10/server/imap_server.pid 11:16:43.502430 Awaiting input 11:16:44.495728 ====> Client connect 11:16:44.495869 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.496107 < "A001 CAPABILITY" 11:16:44.496136 > "A001 BAD Command[CR][LF]" 11:16:44.496260 < "A002 LIST "verifiedserver" *" 11:16:44.496285 LIST_imap got "verifiedserver" * 11:16:44.496304 > "* LIST () "/" "WE ROOLZ: 106289"[CR][LF]" 11:16:44.496319 > "A002 OK LIST Completed[CR][LF]" 11:16:44.496328 return proof we are we 11:16:44.539039 < "A003 LOGOUT" 11:16:44.539081 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.539096 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.582203 MAIN sockfilt said DISC 11:16:44.582247 ====> Client disconnected 11:16:44.582288 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.019499 Running IPv4 version 11:16:43.019552 Listening on port 46689 11:16:43.019580 Wrote pid 106324 to log/10/server/imap_sockfilt.pid 11:16:43.019602 Wrote port 46689 to log/10/server/imap_server.port 11:16:43.019614 Received PING (on stdin) 11:16:44.012980 ====> Client connect 11:16:44.013200 Received DATA (on stdin) 11:16:44.013210 > 178 bytes data, server => client 11:16:44.013219 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:44.013228 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:44.013236 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:44.013242 'rve\r\n' 11:16:44.013306 < 17 bytes data, client => server 11:16:44.013314 'A001 CAPABILITY\r\n' 11:16:44.013462 Received DATA (on stdin) 11:16:44.013470 > 18 bytes data, server => client 11:16:44.013478 'A001 BAD Command\r\n' 11:16:44.013522 < 30 bytes data, client => server 11:16:44.013530 'A002 LIST "verifiedserver" *\r\n' 11:16:44.013649 Received DATA (on stdin) 11:16:44.013657 > 34 bytes data, server => client 11:16:44.013665 '* LIST () "/" "WE ROOLZ: 106289"\r\n' 11:16:44.013681 Received DATA (on stdin) 11:16:44.013688 > 24 bytes data, server => client 11:16:44.013695 'A002 OK LIST Completed\r\n' 11:16:44.056232 < 13 bytes data, client => server 11:16:44.056252 'A003 LOGOUT\r\n' 11:16:44.056421 Received DATA (on stdin) 11:16:44.056431 > 36 bytes data, server => client 11:16:44.056439 '* BYE curl IMAP server signing off\r\n' 11:16:44.056464 Received DATA (on stdin) 11:16:44.056472 > 26 bytes data, server => client 11:16:44.056479 'A003 OK LOGOUT completed\r\n' 11:16:44.099464 ====> Client disconnect 11:16:44.099585 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 802 === End of file server.cmd === Start of file valgrind802 ==106932== ==106932== Process terminating with default action of signal 4 (SIGILL) ==106932== Illegal opcode at address 0x10B06D ==106932== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106932== by 0x10B06D: main (tool_main.c:234) === End of file valgrind802 startnew: perl -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 38285 (log/12/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:38285/verifiedserver" 2>log/12/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106302 port 38285 * pid imap => 106302 106302 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/12/valgrind804 ../src/curl -q --output log/12/curl804.out --include --trace-ascii log/12/trace804 --trace-time 'imap://127.0.0.1:38285/804/;MAILINDEX=123/;SECTION=1' 'imap://127.0.0.1:38285/804/;MAILINDEX=456/;SECTION=2.3' -u user:secret > log/12/stdout804 2> log/12/stderr804 804: 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 804 === Start of file imap_server.log 11:16:43.520072 IMAP server listens on port IPv4/38285 11:16:43.520142 logged pid 106302 in log/12/server/imap_server.pid 11:16:43.520163 Awaiting input 11:16:44.504495 ====> Client connect 11:16:44.504597 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.504782 < "A001 CAPABILITY" 11:16:44.504805 > "A001 BAD Command[CR][LF]" 11:16:44.504905 < "A002 LIST "verifiedserver" *" 11:16:44.504922 LIST_imap got "verifiedserver" * 11:16:44.504936 > "* LIST () "/" "WE ROOLZ: 106302"[CR][LF]" 11:16:44.504948 > "A002 OK LIST Completed[CR][LF]" 11:16:44.504956 return proof we are we 11:16:44.545722 < "A003 LOGOUT" 11:16:44.545767 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.545782 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.589185 MAIN sockfilt said DISC 11:16:44.589226 ====> Client disconnected 11:16:44.589264 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.037183 Running IPv4 version 11:16:43.037259 Listening on port 38285 11:16:43.037287 Wrote pid 106361 to log/12/server/imap_sockfilt.pid 11:16:43.037308 Wrote port 38285 to log/12/server/imap_server.port 11:16:43.037323 Received PING (on stdin) 11:16:44.021761 ====> Client connect 11:16:44.021923 Received DATA (on stdin) 11:16:44.021933 > 178 bytes data, server => client 11:16:44.021940 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:44.021947 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:44.021952 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:44.021957 'rve\r\n' 11:16:44.022006 < 17 bytes data, client => server 11:16:44.022012 'A001 CAPABILITY\r\n' 11:16:44.022127 Received DATA (on stdin) 11:16:44.022134 > 18 bytes data, server => client 11:16:44.022140 'A001 BAD Command\r\n' 11:16:44.022176 < 30 bytes data, client => server 11:16:44.022182 'A002 LIST "verifiedserver" *\r\n' 11:16:44.022275 Received DATA (on stdin) 11:16:44.022281 > 34 bytes data, server => client 11:16:44.022287 '* LIST () "/" "WE ROOLZ: 106302"\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/11/valgrind806 ../src/curl -q --output log/11/curl806.out --include --trace-ascii log/11/trace806 --trace-time imap://127.0.0.1:33793/806 -u user:secret > log/11/stdout806 2> log/11/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/7/valgrind815 ../src/curl -q --output log/7/curl815.out --include --trace-ascii log/7/trace815 --trace-time imap://127.0.0.1:39443/815 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:39443/815 -X CLOSE -u user:secret > log/7/stdout815 2> log/7/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/2/valgrind817 ../src/curl -q --output log/2/curl817.out --include --trace-ascii log/2/trace817 --trace-time imap://127.0.0.1:40175 -u user:secret -X 'COPY 123 817' > log/2/stdout817 2> log/2/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/5/valgrind807 ../src/curl -q --output log/5/curl807.out --include --trace-ascii log/5/trace807 --trace-time imap://127.0.0.1:37417 -u user:secret -X 'LSUB "807" *' > log/5/stdout807 2> log/5/stderr807 11:16:44.022300 Received DATA (on stdin) 11:16:44.022306 > 24 bytes data, server => client 11:16:44.022311 'A002 OK LIST Completed\r\n' 11:16:44.062913 < 13 bytes data, client => server 11:16:44.062933 'A003 LOGOUT\r\n' 11:16:44.063108 Received DATA (on stdin) 11:16:44.063117 > 36 bytes data, server => client 11:16:44.063125 '* BYE curl IMAP server signing off\r\n' 11:16:44.063147 Received DATA (on stdin) 11:16:44.063154 > 26 bytes data, server => client 11:16:44.063161 'A003 OK LOGOUT completed\r\n' 11:16:44.106447 ====> Client disconnect 11:16:44.106592 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 804 === End of file server.cmd === Start of file valgrind804 ==106955== ==106955== Process terminating with default action of signal 4 (SIGILL) ==106955== Illegal opcode at address 0x10B06D ==106955== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==106955== by 0x10B06D: main (tool_main.c:234) === End of file valgrind804 startnew: perl -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 33793 (log/11/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:33793/verifiedserver" 2>log/11/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106359 port 33793 * pid imap => 106359 106359 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/11/valgrind806 ../src/curl -q --output log/11/curl806.out --include --trace-ascii log/11/trace806 --trace-time imap://127.0.0.1:33793/806 -u user:secret > log/11/stdout806 2> log/11/stderr806 806: 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 806 === Start of file imap_server.log 11:16:43.541644 IMAP server listens on port IPv4/33793 11:16:43.541702 logged pid 106359 in log/11/server/imap_server.pid 11:16:43.541718 Awaiting input 11:16:44.535915 ====> Client connect 11:16:44.536032 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.536221 < "A001 CAPABILITY" 11:16:44.536245 > "A001 BAD Command[CR][LF]" 11:16:44.536353 < "A002 LIST "verifiedserver" *" 11:16:44.536373 LIST_imap got "verifiedserver" * 11:16:44.536387 > "* LIST () "/" "WE ROOLZ: 106359"[CR][LF]" 11:16:44.536399 > "A002 OK LIST Completed[CR][LF]" 11:16:44.536406 return proof we are we 11:16:44.580687 < "A003 LOGOUT" 11:16:44.580737 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.580752 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.622398 MAIN sockfilt said DISC 11:16:44.622452 ====> Client disconnected 11:16:44.622498 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.058798 Running IPv4 version 11:16:43.058853 Listening on port 33793 11:16:43.058874 Wrote pid 106395 to log/11/server/imap_sockfilt.pid 11:16:43.058891 Wrote port 33793 to log/11/server/imap_server.port 11:16:43.058903 Received PING (on stdin) 11:16:44.053179 ====> Client connect 11:16:44.053358 Received DATA (on stdin) 11:16:44.053365 > 178 bytes data, server => client 11:16:44.053372 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:44.053378 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:44.053384 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:44.053389 'rve\r\n' 11:16:44.053437 < 17 bytes data, client => server 11:16:44.053444 'A001 CAPABILITY\r\n' 11:16:44.053568 Received DATA (on stdin) 11:16:44.053575 > 18 bytes data, server => client 11:16:44.053581 'A001 BAD Command\r\n' 11:16:44.053618 < 30 bytes data, client => server 11:16:44.053624 'A002 LIST "verifiedserver" *\r\n' 11:16:44.053726 Received DATA (on stdin) 11:16:44.053732 > 34 bytes data, server => client 11:16:44.053738 '* LIST () "/" "WE ROOLZ: 106359"\r\n' 11:16:44.053751 Received DATA (on stdin) 11:16:44.053756 > 24 bytes data, server => client 11:16:44.053762 'A002 OK LIST Completed\r\n' 11:16:44.097892 < 13 bytes data, client => server 11:16:44.097917 'A003 LOGOUT\r\n' 11:16:44.098078 Received DATA (on stdin) 11:16:44.098089 > 36 bytes data, server => client 11:16:44.098097 '* BYE curl IMAP server signing off\r\n' 11:16:44.098122 Received DATA (on stdin) 11:16:44.098130 > 26 bytes data, server => client 11:16:44.098138 'A003 OK LOGOUT completed\r\n' 11:16:44.139634 ====> Client disconnect 11:16:44.139826 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 806 === End of file server.cmd === Start of file valgrind806 ==107064== ==107064== Process terminating with default action of signal 4 (SIGILL) ==107064== Illegal opcode at address 0x10B06D ==107064== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107064== by 0x10B06D: main (tool_main.c:234) === End of file valgrind806 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/7/valgrind815 ../src/curl -q --output log/7/curl815.out --include --trace-ascii log/7/trace815 --trace-time imap://127.0.0.1:39443/815 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:39443/815 -X CLOSE -u user:secret > log/7/stdout815 2> log/7/stderr815 815: 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 815 === Start of file server.cmd Testnum 815 === End of file server.cmd === Start of file valgrind815 ==107039== ==107039== Process terminating with default action of signal 4 (SIGILL) ==107039== Illegal opcode at address 0x10B06D ==107039== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107039== by 0x10B06D: main (tool_main.c:234) === End of file valgrind815 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/2/valgrind817 ../src/curl -q --output log/2/curl817.out --include --trace-ascii log/2/trace817 --trace-time imap://127.0.0.1:40175 -u user:secret -X 'COPY 123 817' > log/2/stdout817 2> log/2/stderr817 817: 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 817 === Start of file server.cmd Testnum 817 === End of file server.cmd === Start of file valgrind817 ==107086== ==107086== Process terminating with default action of signal 4 (SIGILL) ==107086== Illegal opcode at address 0x10B06D ==107086== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107086== by 0x10B06D: main (tool_main.c:234) === End of file valgrind817 startnew: perl -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 37417 (log/5/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:37417/verifiedserver" 2>log/5/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106394 port 37417 * pid imap => 106394 106394 test 0807...CMD (33792): ../libtool --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/valgrind819 ../src/curl -q --output log/3/curl819.out --include --trace-ascii log/3/trace819 --trace-time 'imap://127.0.0.1:42165/819/;MAILINDEX=1' -u user:secret > log/3/stdout819 2> log/3/stderr819 CMD (33792): ../libtool --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/valgrind818 ../src/curl -q --output log/1/curl818.out --include --trace-ascii log/1/trace818 --trace-time imap://127.0.0.1:37999 -X NOOP -u user:secret > log/1/stdout818 2> log/1/stderr818 CMD (33792): ../libtool --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/valgrind820 ../src/curl -q --output log/6/curl820.out --include --trace-ascii log/6/trace820 --trace-time 'imap://127.0.0.1:36685/820/;MAILINDEX=1' -u user:secret > log/6/stdout820 2> log/6/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/8/valgrind821 ../src/curl -q --output log/8/curl821.out --include --trace-ascii log/8/trace821 --trace-time 'imap://127.0.0.1:34637/821/;MAILINDEX=1' -u user:secret > log/8/stdout821 2> log/8/stderr821 [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/5/valgrind807 ../src/curl -q --output log/5/curl807.out --include --trace-ascii log/5/trace807 --trace-time imap://127.0.0.1:37417 -u user:secret -X 'LSUB "807" *' > log/5/stdout807 2> log/5/stderr807 807: 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 807 === Start of file imap_server.log 11:16:43.562571 IMAP server listens on port IPv4/37417 11:16:43.562626 logged pid 106394 in log/5/server/imap_server.pid 11:16:43.562645 Awaiting input 11:16:44.556384 ====> Client connect 11:16:44.556496 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:44.556683 < "A001 CAPABILITY" 11:16:44.556707 > "A001 BAD Command[CR][LF]" 11:16:44.556806 < "A002 LIST "verifiedserver" *" 11:16:44.556823 LIST_imap got "verifiedserver" * 11:16:44.556839 > "* LIST () "/" "WE ROOLZ: 106394"[CR][LF]" 11:16:44.556850 > "A002 OK LIST Completed[CR][LF]" 11:16:44.556858 return proof we are we 11:16:44.602479 < "A003 LOGOUT" 11:16:44.602526 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:44.602541 > "A003 OK LOGOUT completed[CR][LF]" 11:16:44.652743 MAIN sockfilt said DISC 11:16:44.652785 ====> Client disconnected 11:16:44.652824 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:43.079704 Running IPv4 version 11:16:43.079778 Listening on port 37417 11:16:43.079802 Wrote pid 106397 to log/5/server/imap_sockfilt.pid 11:16:43.079820 Wrote port 37417 to log/5/server/imap_server.port 11:16:43.079830 Received PING (on stdin) 11:16:44.073649 ====> Client connect 11:16:44.073822 Received DATA (on stdin) 11:16:44.073829 > 178 bytes data, server => client 11:16:44.073836 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:44.073842 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:44.073848 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:44.073853 'rve\r\n' 11:16:44.073902 < 17 bytes data, client => server 11:16:44.073908 'A001 CAPABILITY\r\n' 11:16:44.074030 Received DATA (on stdin) 11:16:44.074037 > 18 bytes data, server => client 11:16:44.074042 'A001 BAD Command\r\n' 11:16:44.074078 < 30 bytes data, client => server 11:16:44.074084 'A002 LIST "verifiedserver" *\r\n' 11:16:44.074177 Received DATA (on stdin) 11:16:44.074183 > 34 bytes data, server => client 11:16:44.074189 '* LIST () "/" "WE ROOLZ: 106394"\r\n' 11:16:44.074202 Received DATA (on stdin) 11:16:44.074207 > 24 bytes data, server => client 11:16:44.074212 'A002 OK LIST Completed\r\n' 11:16:44.119644 < 13 bytes data, client => server 11:16:44.119669 'A003 LOGOUT\r\n' 11:16:44.120289 Received DATA (on stdin) 11:16:44.120305 > 36 bytes data, server => client 11:16:44.120315 '* BYE curl IMAP server signing off\r\n' 11:16:44.120337 Received DATA (on stdin) 11:16:44.120345 > 26 bytes data, server => client 11:16:44.120352 'A003 OK LOGOUT completed\r\n' 11:16:44.170005 ====> Client disconnect 11:16:44.170147 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 807 === End of file server.cmd === Start of file valgrind807 ==107184== ==107184== Process terminating with default action of signal 4 (SIGILL) ==107184== Illegal opcode at address 0x10B06D ==107184== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107184== by 0x10B06D: main (tool_main.c:234) === End of file valgrind807 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/3/valgrind819 ../src/curl -q --output log/3/curl819.out --include --trace-ascii log/3/trace819 --trace-time 'imap://127.0.0.1:42165/819/;MAILINDEX=1' -u user:secret > log/3/stdout819 2> log/3/stderr819 819: 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 819 === 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 ==107244== ==107244== Process terminating with default action of signal 4 (SIGILL) ==107244== Illegal opcode at address 0x10B06D ==107244== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107244== by 0x10B06D: main (tool_main.c:234) === End of file valgrind819 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/1/valgrind818 ../src/curl -q --output log/1/curl818.out --include --trace-ascii log/1/trace818 --trace-time imap://127.0.0.1:37999 -X NOOP -u user:secret > log/1/stdout818 2> log/1/stderr818 818: 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 818 === Start of file server.cmd Testnum 818 === End of file server.cmd === Start of file valgrind818 ==107237== ==107237== Process terminating with default action of signal 4 (SIGILL) ==107237== Illegal opcode at address 0x10B06D ==107237== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107237== by 0x10B06D: main (tool_main.c:234) === End of file valgrind818 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/6/valgrind820 ../src/curl -q --output log/6/curl820.out --include --trace-ascii log/6/trace820 --trace-time 'imap://127.0.0.1:36685/820/;MAILINDEX=1' -u user:secret > log/6/stdout820 2> log/6/stderr820 820: 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 820 === 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 ==107364== ==107364== Process terminating with default action of signal 4 (SIGILL) ==107364== Illegal opcode at address 0x10B06D ==107364== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107364== by 0x10B06D: main (tool_main.c:234) === End of file valgrind820 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost test 0831 SKIPPED: got unexpected host name back, LD_PRELOAD failed 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-time 'imap://127.0.0.1:34637/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 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 ==107413== ==107413== Process terminating with default action of signal 4 (SIGCMD (33792): ../libtool --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/valgrind822 ../src/curl -q --output log/10/curl822.out --include --trace-ascii log/10/trace822 --trace-time 'imap://127.0.0.1:46689/822/;MAILINDEX=1' -u testuser:testpass > log/10/stdout822 2> log/10/stderr822 CMD (33792): ../libtool --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/valgrind825 ../src/curl -q --output log/11/curl825.out --include --trace-ascii log/11/trace825 --trace-time 'imap://127.0.0.1:33793/825/;MAILINDEX=1' -u user:secret > log/11/stdout825 2> log/11/stderr825 CMD (33792): ../libtool --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/valgrind824 ../src/curl -q --output log/12/curl824.out --include --trace-ascii log/12/trace824 --trace-time 'imap://127.0.0.1:38285/824/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/12/stdout824 2> log/12/stderr824 CMD (33792): ../libtool --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/valgrind826 ../src/curl -q --output log/7/curl826.out --include --trace-ascii log/7/trace826 --trace-time 'imap://127.0.0.1:39443/826/;MAILINDEX=1' -u user:secret > log/7/stdout826 2> log/7/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/2/valgrind827 ../src/curl -q --output log/2/curl827.out --include --trace-ascii log/2/trace827 --trace-time 'imap://127.0.0.1:40175/827/;MAILINDEX=1' -u testuser:testpass > log/2/stdout827 2> log/2/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/5/valgrind828 ../src/curl -q --output log/5/curl828.out --include --trace-ascii log/5/trace828 --trace-time 'imap://127.0.0.1:37417/828/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/5/stdout828 2> log/5/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/1/valgrind830 ../src/curl -q --output log/1/curl830.out --include --trace-ascii log/1/trace830 --trace-time 'imap://127.0.0.1:37999/830/;MAILINDEX=1' -u user:secret > log/1/stdout830 2> log/1/stderr830 ILL) ==107413== Illegal opcode at address 0x10B06D ==107413== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107413== by 0x10B06D: 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/10/valgrind822 ../src/curl -q --output log/10/curl822.out --include --trace-ascii log/10/trace822 --trace-time 'imap://127.0.0.1:46689/822/;MAILINDEX=1' -u testuser:testpass > log/10/stdout822 2> log/10/stderr822 822: 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 822 === 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 ==107431== ==107431== Process terminating with default action of signal 4 (SIGILL) ==107431== Illegal opcode at address 0x10B06D ==107431== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107431== by 0x10B06D: main (tool_main.c:234) === End of file valgrind822 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost test 0834 SKIPPED: got unexpected host name back, LD_PRELOAD failed 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/11/valgrind825 ../src/curl -q --output log/11/curl825.out --include --trace-ascii log/11/trace825 --trace-time 'imap://127.0.0.1:33793/825/;MAILINDEX=1' -u user:secret > log/11/stdout825 2> log/11/stderr825 825: 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 825 === 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 ==107534== ==107534== Process terminating with default action of signal 4 (SIGILL) ==107534== Illegal opcode at address 0x10B06D ==107534== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107534== by 0x10B06D: main (tool_main.c:234) === End of file valgrind825 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/12/valgrind824 ../src/curl -q --output log/12/curl824.out --include --trace-ascii log/12/trace824 --trace-time 'imap://127.0.0.1:38285/824/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/12/stdout824 2> log/12/stderr824 824: 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 824 === Start of file server.cmd AUTH XOAUTH2 REPLY AUTHENTICATE + REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB A002 OK AUTHENTICATE completed Testnum 824 === End of file server.cmd === Start of file valgrind824 ==107509== ==107509== Process terminating with default action of signal 4 (SIGILL) ==107509== Illegal opcode at address 0x10B06D ==107509== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107509== by 0x10B06D: main (tool_main.c:234) === End of file valgrind824 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/7/valgrind826 ../src/curl -q --output log/7/curl826.out --include --trace-ascii log/7/trace826 --trace-time 'imap://127.0.0.1:39443/826/;MAILINDEX=1' -u user:secret > log/7/stdout826 2> log/7/stderr826 826: 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 826 === 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 ==107536== ==107536== Process terminating with default action of signal 4 (SIGILL) ==107536== Illegal opcode at address 0x10B06D ==107536== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107536== by 0x10B06D: main (tool_main.c:234) === End of file valgrind826 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/2/valgrind827 ../src/curl -q --output log/2/curl827.out --include --trace-ascii log/2/trace827 --trace-time 'imap://127.0.0.1:40175/827/;MAILINDEX=1' -u testuser:testpass > log/2/stdout827 2> log/2/stderr827 827: 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 827 === 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 ==107537== ==107537== Process terminating with default action of signal 4 (SIGILL) ==107537== Illegal opcode at address 0x10B06D ==107537== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107537== by 0x10B06D: main (tool_main.c:234) === End of file valgrind827 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/5/valgrind828 ../src/curl -q --output log/5/curl828.out --include --trace-ascii log/5/trace828 --trace-time 'imap://127.0.0.1:37417/828/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/5/stdout828 2> log/5/stderr828 828: 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 828 === 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 ==107698== ==107698== Process terminating with default action of signal 4 (SIGILL) ==107698== Illegal opcode at address 0x10B06D ==107698== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107698== by 0x10B06D: main (tool_main.c:234) === End of file valgrind828 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/1/valgrind830 ../src/curl -q --output log/1/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/valgrind829 ../src/curl -q --output log/3/curl829.out --include --trace-ascii log/3/trace829 --trace-time imap://127.0.0.1:42165/%0d%0a/829 > log/3/stdout829 2> log/3/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/6/valgrind833 ../src/curl -q --output log/6/curl833.out --include --trace-ascii log/6/trace833 --trace-time 'imap://127.0.0.1:36685/833/;MAILINDEX=1' -u user:secret > log/6/stdout833 2> log/6/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/4/valgrind814 ../src/curl -q --output log/4/curl814.out --include --trace-ascii log/4/trace814 --trace-time imap://127.0.0.1:42393/814 -u user:secret -X 'CHECK' > log/4/stdout814 2> log/4/stderr814 CMD (33792): ../libtool --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/valgrind837 ../src/curl -q --output log/10/curl837.out --include --trace-ascii log/10/trace837 --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:46689/837/;MAILINDEX=1' > log/10/stdout837 2> log/10/stderr837 830.out --include --trace-ascii log/1/trace830 --trace-time 'imap://127.0.0.1:37999/830/;MAILINDEX=1' -u user:secret > log/1/stdout830 2> log/1/stderr830 830: 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 830 === 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 ==107736== ==107736== Process terminating with default action of signal 4 (SIGILL) ==107736== Illegal opcode at address 0x10B06D ==107736== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107736== by 0x10B06D: main (tool_main.c:234) === End of file valgrind830 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/3/valgrind829 ../src/curl -q --output log/3/curl829.out --include --trace-ascii log/3/trace829 --trace-time imap://127.0.0.1:42165/%0d%0a/829 > log/3/stdout829 2> log/3/stderr829 curl returned 132, when expecting 3 829: exit FAILED == Contents of files in the log/3/ dir after test 829 === Start of file server.cmd Testnum 829 === End of file server.cmd === Start of file valgrind829 ==107735== ==107735== Process terminating with default action of signal 4 (SIGILL) ==107735== Illegal opcode at address 0x10B06D ==107735== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107735== by 0x10B06D: main (tool_main.c:234) === End of file valgrind829 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/6/valgrind833 ../src/curl -q --output log/6/curl833.out --include --trace-ascii log/6/trace833 --trace-time 'imap://127.0.0.1:36685/833/;MAILINDEX=1' -u user:secret > log/6/stdout833 2> log/6/stderr833 833: 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 833 === 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 ==107872== ==107872== Process terminating with default action of signal 4 (SIGILL) ==107872== Illegal opcode at address 0x10B06D ==107872== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107872== by 0x10B06D: main (tool_main.c:234) === End of file valgrind833 startnew: perl -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 42393 (log/4/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:42393/verifiedserver" 2>log/4/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 106831 port 42393 * pid imap => 106831 106831 test 0814...[IMAP CHECK 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/4/valgrind814 ../src/curl -q --output log/4/curl814.out --include --trace-ascii log/4/trace814 --trace-time imap://127.0.0.1:42393/814 -u user:secret -X 'CHECK' > log/4/stdout814 2> log/4/stderr814 814: 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 814 === Start of file imap_server.log 11:16:44.483180 IMAP server listens on port IPv4/42393 11:16:44.483273 logged pid 106831 in log/4/server/imap_server.pid 11:16:44.483296 Awaiting input 11:16:45.483131 ====> Client connect 11:16:45.483262 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:45.483533 < "A001 CAPABILITY" 11:16:45.483568 > "A001 BAD Command[CR][LF]" 11:16:45.483723 < "A002 LIST "verifiedserver" *" 11:16:45.483753 LIST_imap got "verifiedserver" * 11:16:45.483776 > "* LIST () "/" "WE ROOLZ: 106831"[CR][LF]" 11:16:45.483793 > "A002 OK LIST Completed[CR][LF]" 11:16:45.483804 return proof we are we 11:16:45.525830 < "A003 LOGOUT" 11:16:45.525877 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:45.525891 > "A003 OK LOGOUT completed[CR][LF]" 11:16:45.572899 MAIN sockfilt said DISC 11:16:45.572958 ====> Client disconnected 11:16:45.573005 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:44.999792 Running IPv4 version 11:16:44.999854 Listening on port 42393 11:16:44.999885 Wrote pid 106848 to log/4/server/imap_sockfilt.pid 11:16:44.999908 Wrote port 42393 to log/4/server/imap_server.port 11:16:45.000424 Received PING (on stdin) 11:16:46.000382 ====> Client connect 11:16:46.000597 Received DATA (on stdin) 11:16:46.000609 > 178 bytes data, server => client 11:16:46.000619 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:46.000629 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:46.000638 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:46.000645 'rve\r\n' 11:16:46.000716 < 17 bytes data, client => server 11:16:46.000726 'A001 CAPABILITY\r\n' 11:16:46.000898 Received DATA (on stdin) 11:16:46.000909 > 18 bytes data, server => client 11:16:46.000917 'A001 BAD Command\r\n' 11:16:46.000969 < 30 bytes data, client => server 11:16:46.000979 'A002 LIST "verifiedserver" *\r\n' 11:16:46.001129 Received DATA (on stdin) 11:16:46.001138 > 34 bytes data, server => client 11:16:46.001147 '* LIST () "/" "WE ROOLZ: 106831"\r\n' 11:16:46.001166 Received DATA (on stdin) 11:16:46.001174 > 24 bytes data, server => client 11:16:46.001182 'A002 OK LIST Completed\r\n' 11:16:46.042995 < 13 bytes data, client => server 11:16:46.043024 'A003 LOGOUT\r\n' 11:16:46.043216 Received DATA (on stdin) 11:16:46.043225 > 36 bytes data, server => client 11:16:46.043233 '* BYE curl IMAP server signing off\r\n' 11:16:46.043253 Received DATA (on stdin) 11:16:46.043260 > 26 bytes data, server => client 11:16:46.043267 'A003 OK LOGOUT completed\r\n' 11:16:46.090142 ====> Client disconnect 11:16:46.090331 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 814 === End of file server.cmd === Start of file valgrind814 ==107920== ==107920== Process terminating with default action of signal 4 (SIGILL) ==107920== Illegal opcode at address 0x10B06D ==107920== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107920== by 0x10B06D: main (tool_main.c:234) === End of file valgrind814 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/10/valgrind837 ../src/curl -q --output log/10/curl837.out --include --trace-ascii log/10/trace837 --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:46689/837/;MAILINDEX=1' > log/10/stdout837 2> log/10/stderr837 837: 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 837 === Start of file server.cmd AUTH EXTERNAL REPLY AUTHENTICATE + REPLY dXNlcg== A002 OK AUTHENTICATE completed Testnum 837 === End 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/8/valgrind838 ../src/curl -q --output log/8/curl838.out --include --trace-ascii log/8/trace838 --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:34637/838/;MAILINDEX=1' > log/8/stdout838 2> log/8/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/12/valgrind840 ../src/curl -q --output log/12/curl840.out --include --trace-ascii log/12/trace840 --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:38285/840/;MAILINDEX=1' > log/12/stdout840 2> log/12/stderr840 CMD (33792): ../libtool --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/valgrind816 ../src/curl -q --output log/9/curl816.out --include --trace-ascii log/9/trace816 --trace-time imap://127.0.0.1:38157/816 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:38157/816 -X EXPUNGE -u user:secret > log/9/stdout816 2> log/9/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/11/valgrind839 ../src/curl -q --output log/11/curl839.out --include --trace-ascii log/11/trace839 --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:33793/839/;MAILINDEX=1' > log/11/stdout839 2> log/11/stderr839 file server.cmd === Start of file valgrind837 ==107988== ==107988== Process terminating with default action of signal 4 (SIGILL) ==107988== Illegal opcode at address 0x10B06D ==107988== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107988== by 0x10B06D: main (tool_main.c:234) === End of file valgrind837 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/8/valgrind838 ../src/curl -q --output log/8/curl838.out --include --trace-ascii log/8/trace838 --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:34637/838/;MAILINDEX=1' > log/8/stdout838 2> log/8/stderr838 838: 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 838 === 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 ==107989== ==107989== Process terminating with default action of signal 4 (SIGILL) ==107989== Illegal opcode at address 0x10B06D ==107989== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==107989== by 0x10B06D: main (tool_main.c:234) === End of file valgrind838 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/12/valgrind840 ../src/curl -q --output log/12/curl840.out --include --trace-ascii log/12/trace840 --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:38285/840/;MAILINDEX=1' > log/12/stdout840 2> log/12/stderr840 840: 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 840 === Start of file server.cmd AUTH EXTERNAL CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed Testnum 840 === End of file server.cmd === Start of file valgrind840 ==108094== ==108094== Process terminating with default action of signal 4 (SIGILL) ==108094== Illegal opcode at address 0x10B06D ==108094== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108094== by 0x10B06D: main (tool_main.c:234) === End of file valgrind840 startnew: perl -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 38157 (log/9/server/imap_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "imap://127.0.0.1:38157/verifiedserver" 2>log/9/imap_verify.log RUN: Verifying our test imap server took 0 seconds RUN: IMAP server is PID 107026 port 38157 * pid imap => 107026 107026 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/9/valgrind816 ../src/curl -q --output log/9/curl816.out --include --trace-ascii log/9/trace816 --trace-time imap://127.0.0.1:38157/816 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:38157/816 -X EXPUNGE -u user:secret > log/9/stdout816 2> log/9/stderr816 816: 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 816 === Start of file imap_server.log 11:16:44.650993 IMAP server listens on port IPv4/38157 11:16:44.651069 logged pid 107026 in log/9/server/imap_server.pid 11:16:44.651088 Awaiting input 11:16:45.645933 ====> Client connect 11:16:45.646086 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 11:16:45.646617 < "A001 CAPABILITY" 11:16:45.646653 > "A001 BAD Command[CR][LF]" 11:16:45.646806 < "A002 LIST "verifiedserver" *" 11:16:45.646834 LIST_imap got "verifiedserver" * 11:16:45.646854 > "* LIST () "/" "WE ROOLZ: 107026"[CR][LF]" 11:16:45.646870 > "A002 OK LIST Completed[CR][LF]" 11:16:45.646879 return proof we are we 11:16:45.694512 < "A003 LOGOUT" 11:16:45.694557 > "* BYE curl IMAP server signing off[CR][LF]" 11:16:45.694568 > "A003 OK LOGOUT completed[CR][LF]" 11:16:45.736800 MAIN sockfilt said DISC 11:16:45.736856 ====> Client disconnected 11:16:45.736900 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 11:16:44.168111 Running IPv4 version 11:16:44.168175 Listening on port 38157 11:16:44.168202 Wrote pid 107138 to log/9/server/imap_sockfilt.pid 11:16:44.168224 Wrote port 38157 to log/9/server/imap_server.port 11:16:44.168238 Received PING (on stdin) 11:16:45.163179 ====> Client connect 11:16:45.163421 Received DATA (on stdin) 11:16:45.163433 > 178 bytes data, server => client 11:16:45.163443 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:45.163452 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:45.163460 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 11:16:45.163467 'rve\r\n' 11:16:45.163781 < 17 bytes data, client => server 11:16:45.163797 'A001 CAPABILITY\r\n' 11:16:45.163982 Received DATA (on stdin) 11:16:45.163992 > 18 bytes data, server => client 11:16:45.164000 'A001 BAD Command\r\n' 11:16:45.164052 < 30 bytes data, client => server 11:16:45.164061 'A002 LIST "verifiedserver" *\r\n' 11:16:45.164202 Received DATA (on stdin) 11:16:45.164211 > 34 bytes data, server => client 11:16:45.164219 '* LIST () "/" "WE ROOLZ: 107026"\r\n' 11:16:45.164238 Received DATA (on stdin) 11:16:45.164245 > 24 bytes data, server => client 11:16:45.164252 'A002 OK LIST Completed\r\n' 11:16:45.211708 < 13 bytes data, client => server 11:16:45.211732 'A003 LOGOUT\r\n' 11:16:45.211891 Received DATA (on stdin) 11:16:45.211900 > 36 bytes data, server => client 11:16:45.211906 '* BYE curl IMAP server signing off\r\n' 11:16:45.211924 Received DATA (on stdin) 11:16:45.211930 > 26 bytes data, server => client 11:16:45.211936 'A003 OK LOGOUT completed\r\n' 11:16:45.253661 ====> Client disconnect 11:16:45.254231 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 816 === End of file server.cmd === Start of file valgrind816 ==108082== ==108082== Process terminating with default action of signal 4 (SIGILL) ==108082== Illegal opcode at address 0x10B06D ==108082== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108082== by 0x10B06D: main (tool_main.c:234) === End of file valgrind816 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/11/valgrind839 ../src/curl -q --output log/11/curl839.out --include --trace-ascii log/11/trace839 --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:33793/839/;MAILINDEX=1' > log/11/stdout839 2> log/11/stderr839 839: 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 839 === 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 ==108078== ==108078== Process terminating with default action of signal 4 (SIGILL) ==108078== Illegal opcode at address 0x10B06D ==108078== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108078== by 0x10B06D: main (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/valgrind843 ../src/curl -q --output log/5/curl843.out --include --trace-ascii log/5/trace843 --trace-time 'imap://127.0.0.1:37417/843/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/5/stdout843 2> log/5/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/2/valgrind842 ../src/curl -q --output log/2/curl842.out --include --trace-ascii log/2/trace842 --trace-time 'imap://127.0.0.1:40175/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout842 2> log/2/stderr842 CMD (33792): ../libtool --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/valgrind841 ../src/curl -q --output log/7/curl841.out --include --trace-ascii log/7/trace841 --trace-time imap://127.0.0.1:39443/841/ -u user:secret -X 'FETCH 123 BODY[1]' > log/7/stdout841 2> log/7/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/1/valgrind844 ../src/curl -q --output log/1/curl844.out --include --trace-ascii log/1/trace844 --trace-time 'imap://127.0.0.1:37999/844/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/1/stdout844 2> log/1/stderr844 CMD (33792): ../libtool --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/valgrind845 ../src/curl -q --output log/3/curl845.out --include --trace-ascii log/3/trace845 --trace-time 'imap://127.0.0.1:42165/845/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout845 2> log/3/stderr845 CMD (33792): ../libtool --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/valgrind846 ../src/curl -q --output log/6/curl846.out --include --trace-ascii log/6/trace846 --trace-time 'imap://127.0.0.1:36685/846/;MAILINDEX=1' -u notused:still-provided > log/6/stdout846 2> log/6/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/4/valgrind847 ../src/curl -q --output log/4/curl847.out --include --trace-ascii log/4/trace847 --trace-time 'imap://127.0.0.1:42393/847/;UID=1' -u '"user:sec"ret{' > log/4/stdout847 2> log/4/stderr847 main.c:234) === End of file valgrind839 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/5/valgrind843 ../src/curl -q --output log/5/curl843.out --include --trace-ascii log/5/trace843 --trace-time 'imap://127.0.0.1:37417/843/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/5/stdout843 2> log/5/stderr843 843: 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 843 === 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 ==108256== ==108256== Process terminating with default action of signal 4 (SIGILL) ==108256== Illegal opcode at address 0x10B06D ==108256== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108256== by 0x10B06D: main (tool_main.c:234) === End of file valgrind843 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/2/valgrind842 ../src/curl -q --output log/2/curl842.out --include --trace-ascii log/2/trace842 --trace-time 'imap://127.0.0.1:40175/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout842 2> log/2/stderr842 842: 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 842 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTHENTICATE + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9NDAxNzUBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= A002 OK AUTHENTICATE completed Testnum 842 === End of file server.cmd === Start of file valgrind842 ==108201== ==108201== Process terminating with default action of signal 4 (SIGILL) ==108201== Illegal opcode at address 0x10B06D ==108201== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108201== by 0x10B06D: main (tool_main.c:234) === End of file valgrind842 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/7/valgrind841 ../src/curl -q --output log/7/curl841.out --include --trace-ascii log/7/trace841 --trace-time imap://127.0.0.1:39443/841/ -u user:secret -X 'FETCH 123 BODY[1]' > log/7/stdout841 2> log/7/stderr841 841: 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 841 === Start of file server.cmd Testnum 841 === End of file server.cmd === Start of file valgrind841 ==108194== ==108194== Process terminating with default action of signal 4 (SIGILL) ==108194== Illegal opcode at address 0x10B06D ==108194== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108194== by 0x10B06D: main (tool_main.c:234) === End of file valgrind841 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/1/valgrind844 ../src/curl -q --output log/1/curl844.out --include --trace-ascii log/1/trace844 --trace-time 'imap://127.0.0.1:37999/844/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/1/stdout844 2> log/1/stderr844 844: 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 844 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTHENTICATE + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9Mzc5OTkBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= A002 NO Authentication failed Testnum 844 === End of file server.cmd === Start of file valgrind844 ==108374== ==108374== Process terminating with default action of signal 4 (SIGILL) ==108374== Illegal opcode at address 0x10B06D ==108374== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108374== by 0x10B06D: main (tool_main.c:234) === End of file valgrind844 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/3/valgrind845 ../src/curl -q --output log/3/curl845.out --include --trace-ascii log/3/trace845 --trace-time 'imap://127.0.0.1:42165/845/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout845 2> log/3/stderr845 845: 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 845 === Start of file server.cmd AUTH OAUTHBEARER CAPA SASL-IR REPLY AUTHENTICATE + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0= REPLY AQ== A002 NO Authentication failed Testnum 845 === End of file server.cmd === Start of file valgrind845 ==108391== ==108391== Process terminating with default action of signal 4 (SIGILL) ==108391== Illegal opcode at address 0x10B06D ==108391== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108391== by 0x10B06D: 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/6/valgrind846 ../src/curl -q --output log/6/curl846.out --include --trace-ascii log/6/trace846 --trace-time 'imap://127.0.0.1:36685/846/;MAILINDEX=1' -u notused:still-provided > log/6/stdout846 2> log/6/stderr846 846: 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 846 === 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 ==108482== ==108482== Process terminating with default action of signal 4 (SIGILL) ==108482== Illegal opcode at address 0x10B06D ==108482== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108482== by 0x10B06D: main (tool_main.c:234) === End of file valgrind846 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/4/valgrind847 ../src/curl -q --output log/4/curl847.out --include --trace-ascii log/4/trace847 --trace-time 'imap://127.0.0.1:42393/847/;UID=1' -u '"user:sec"ret{' > log/4/stdout847 2> log/4/stderr847 847: 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 847 === Start of file server.cmd Testnum 847 === End of file server.cmd === Start of file valgrind847 ==108513== ==108513== Process terminating with default action of signal 4 (SIGILL) ==108513== Illegal opcode at address 0x10B06D ==108513== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108513== by 0x10B06D: 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/10/valgrind848 ../src/curl -q --output log/10/curl848.out --include --trace-ascii log/10/trace848 --trace-time 'imap://127.0.0.1:46689/848/;MAILINDEX=1' -u user:secret --sasl-authzid shared-mailbox > log/10/stdout848 2> log/10/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/8/valgrind849 ../src/curl -q --output log/8/curl849.out --include --trace-ascii log/8/trace849 --trace-time 'imap://127.0.0.1:34637/849/;MAILINDEX=1' -u kurt:xipj3plmq --sasl-authzid ursel > log/8/stdout849 2> log/8/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/9/valgrind851 ../src/curl -q --output log/9/curl851.out --include --trace-ascii log/9/trace851 --trace-time pop3://127.0.0.1:37419/851 -l -u user:secret > log/9/stdout851 2> log/9/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/11/valgrind852 ../src/curl -q --output log/11/curl852.out --include --trace-ascii log/11/trace852 --trace-time pop3://127.0.0.1:44127/852 -l -u user:secret > log/11/stdout852 2> log/11/stderr852 === End of file valgrind847 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/10/valgrind848 ../src/curl -q --output log/10/curl848.out --include --trace-ascii log/10/trace848 --trace-time 'imap://127.0.0.1:46689/848/;MAILINDEX=1' -u user:secret --sasl-authzid shared-mailbox > log/10/stdout848 2> log/10/stderr848 848: 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 848 === 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 ==108579== ==108579== Process terminating with default action of signal 4 (SIGILL) ==108579== Illegal opcode at address 0x10B06D ==108579== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108579== by 0x10B06D: main (tool_main.c:234) === End of file valgrind848 test 0849...[IMAP plain authentication with alternative 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/8/valgrind849 ../src/curl -q --output log/8/curl849.out --include --trace-ascii log/8/trace849 --trace-time 'imap://127.0.0.1:34637/849/;MAILINDEX=1' -u kurt:xipj3plmq --sasl-authzid ursel > log/8/stdout849 2> log/8/stderr849 849: 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 849 === 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 ==108591== ==108591== Process terminating with default action of signal 4 (SIGILL) ==108591== Illegal opcode at address 0x10B06D ==108591== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108591== by 0x10B06D: main (tool_main.c:234) === End of file valgrind849 startnew: perl -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 37419 (log/9/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:37419/verifiedserver" 2>log/9/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108638 port 37419 * pid pop3 => 108638 108638 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/9/valgrind851 ../src/curl -q --output log/9/curl851.out --include --trace-ascii log/9/trace851 --trace-time pop3://127.0.0.1:37419/851 -l -u user:secret > log/9/stdout851 2> log/9/stderr851 851: 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 851 === Start of file pop3_server.log 11:16:46.381038 POP3 server listens on port IPv4/37419 11:16:46.381123 logged pid 108638 in log/9/server/pop3_server.pid 11:16:46.381143 Awaiting input 11:16:47.360481 ====> Client connect 11:16:47.360587 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.360759 < "CAPA" 11:16:47.360784 > "-ERR Unrecognized command[CR][LF]" 11:16:47.360874 < "RETR verifiedserver" 11:16:47.360891 return proof we are we 11:16:47.360903 > "+OK Mail transfer starts[CR][LF]" 11:16:47.360912 > "WE ROOLZ: 108638[CR][LF]" 11:16:47.360922 > ".[CR][LF]" 11:16:47.402271 < "QUIT" 11:16:47.402325 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.402980 MAIN sockfilt said DISC 11:16:47.403001 ====> Client disconnected 11:16:47.403036 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.898161 Running IPv4 version 11:16:46.898225 Listening on port 37419 11:16:46.898254 Wrote pid 108681 to log/9/server/pop3_sockfilt.pid 11:16:46.898277 Wrote port 37419 to log/9/server/pop3_server.port 11:16:46.898290 Received PING (on stdin) 11:16:47.877745 ====> Client connect 11:16:47.877912 Received DATA (on stdin) 11:16:47.877919 > 178 bytes data, server => client 11:16:47.877925 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.877931 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.877936 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.877941 've \r\n' 11:16:47.877986 < 6 bytes data, client => server 11:16:47.877992 'CAPA\r\n' 11:16:47.878105 Received DATA (on stdin) 11:16:47.878111 > 27 bytes data, server => client 11:16:47.878116 '-ERR Unrecognized command\r\n' 11:16:47.878149 < 21 bytes data, client => server 11:16:47.878154 'RETR verifiedserver\r\n' 11:16:47.878240 Received DATA (on stdin) 11:16:47.878246 > 26 bytes data, server => client 11:16:47.878251 '+OK Mail transfer starts\r\n' 11:16:47.878264 Received DATA (on stdin) 11:16:47.878268 > 18 bytes data, server => client 11:16:47.878273 'WE ROOLZ: 108638\r\n' 11:16:47.878280 Received DATA (on stdin) 11:16:47.878285 > 3 bytes data, server => client 11:16:47.878289 '.\r\n' 11:16:47.919486 < 6 bytes data, client => server 11:16:47.919508 'QUIT\r\n' 11:16:47.919654 Received DATA (on stdin) 11:16:47.919666 > 34 bytes data, server => client 11:16:47.919676 '+OK curl POP3 server signing off\r\n' 11:16:47.920263 ====> Client disconnect 11:16:47.920358 Received ACKD (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 ==108752== ==108752== Process terminating with default action of signal 4 (SIGILL) ==108752== Illegal opcode at address 0x10B06D ==108752== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108752== by 0x10B06D: main (tool_main.c:234) === End of file valgrind851 startnew: perl -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.0.1" PINGPONG runs on port 44127 (log/11/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:44127/verifiedserver" 2>log/11/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108651 port 44127 * pid pop3 => 108651 108651 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/11/valgrind852 ../src/curl -q --output log/11/curl852.out --include --trace-ascii log/11/trace852 --trace-time pop3://127.0.0.1:44127/852 -l -u user:secret > log/11/stdout852 2> log/11/stderr852 852: 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 852 === Start of file pop3_server.log 11:16:46.381024 POP3 server listens on port IPv4/44127 11:16:46.381103 logged pid 108651 in log/11/server/pop3_server.pid 11:16:46.381126 Awaiting input 11:16:47.363606 ====> Client 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/12/valgrind850 ../src/curl -q --output log/12/curl850.out --include --trace-ascii log/12/trace850 --trace-time pop3://127.0.0.1:45767/850 -u user:secret > log/12/stdout850 2> log/12/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/2/valgrind854 ../src/curl -q --output log/2/curl854.out --include --trace-ascii log/2/trace854 --trace-time pop3://127.0.0.1:36653/ -u user:secret > log/2/stdout854 2> log/2/stderr854 onnect 11:16:47.363696 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.363860 < "CAPA" 11:16:47.363885 > "-ERR Unrecognized command[CR][LF]" 11:16:47.363975 < "RETR verifiedserver" 11:16:47.363991 return proof we are we 11:16:47.364003 > "+OK Mail transfer starts[CR][LF]" 11:16:47.364013 > "WE ROOLZ: 108651[CR][LF]" 11:16:47.364023 > ".[CR][LF]" 11:16:47.408977 < "QUIT" 11:16:47.409010 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.409483 MAIN sockfilt said DISC 11:16:47.409500 ====> Client disconnected 11:16:47.409529 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.898102 Running IPv4 version 11:16:46.898151 Listening on port 44127 11:16:46.898174 Wrote pid 108682 to log/11/server/pop3_sockfilt.pid 11:16:46.898195 Wrote port 44127 to log/11/server/pop3_server.port 11:16:46.898290 Received PING (on stdin) 11:16:47.880877 ====> Client connect 11:16:47.881021 Received DATA (on stdin) 11:16:47.881028 > 178 bytes data, server => client 11:16:47.881034 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.881040 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.881045 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.881050 've \r\n' 11:16:47.881094 < 6 bytes data, client => server 11:16:47.881099 'CAPA\r\n' 11:16:47.881206 Received DATA (on stdin) 11:16:47.881212 > 27 bytes data, server => client 11:16:47.881218 '-ERR Unrecognized command\r\n' 11:16:47.881250 < 21 bytes data, client => server 11:16:47.881256 'RETR verifiedserver\r\n' 11:16:47.881341 Received DATA (on stdin) 11:16:47.881347 > 26 bytes data, server => client 11:16:47.881352 '+OK Mail transfer starts\r\n' 11:16:47.881364 Received DATA (on stdin) 11:16:47.881369 > 18 bytes data, server => client 11:16:47.881374 'WE ROOLZ: 108651\r\n' 11:16:47.881380 Received DATA (on stdin) 11:16:47.881385 > 3 bytes data, server => client 11:16:47.881390 '.\r\n' 11:16:47.926195 < 6 bytes data, client => server 11:16:47.926216 'QUIT\r\n' 11:16:47.926332 Received DATA (on stdin) 11:16:47.926338 > 34 bytes data, server => client 11:16:47.926345 '+OK curl POP3 server signing off\r\n' 11:16:47.926771 ====> Client disconnect 11:16:47.926850 Received ACKD (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 ==108770== ==108770== Process terminating with default action of signal 4 (SIGILL) ==108770== Illegal opcode at address 0x10B06D ==108770== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108770== by 0x10B06D: main (tool_main.c:234) === End of file valgrind852 startnew: perl -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 45767 (log/12/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:45767/verifiedserver" 2>log/12/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108636 port 45767 * pid pop3 => 108636 108636 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/12/valgrind850 ../src/curl -q --output log/12/curl850.out --include --trace-ascii log/12/trace850 --trace-time pop3://127.0.0.1:45767/850 -u user:secret > log/12/stdout850 2> log/12/stderr850 850: 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 850 === Start of file pop3_server.log 11:16:46.376314 POP3 server listens on port IPv4/45767 11:16:46.376386 logged pid 108636 in log/12/server/pop3_server.pid 11:16:46.376407 Awaiting input 11:16:47.360481 ====> Client connect 11:16:47.360586 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.360759 < "CAPA" 11:16:47.360784 > "-ERR Unrecognized command[CR][LF]" 11:16:47.360874 < "RETR verifiedserver" 11:16:47.360891 return proof we are we 11:16:47.360904 > "+OK Mail transfer starts[CR][LF]" 11:16:47.360913 > "WE ROOLZ: 108636[CR][LF]" 11:16:47.360923 > ".[CR][LF]" 11:16:47.402299 < "QUIT" 11:16:47.402332 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.402868 MAIN sockfilt said DISC 11:16:47.402891 ====> Client disconnected 11:16:47.402933 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.893327 Running IPv4 version 11:16:46.893402 Listening on port 45767 11:16:46.893431 Wrote pid 108676 to log/12/server/pop3_sockfilt.pid 11:16:46.893454 Wrote port 45767 to log/12/server/pop3_server.port 11:16:46.893567 Received PING (on stdin) 11:16:47.877745 ====> Client connect 11:16:47.877911 Received DATA (on stdin) 11:16:47.877918 > 178 bytes data, server => client 11:16:47.877924 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.877930 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.877935 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.877940 've \r\n' 11:16:47.877986 < 6 bytes data, client => server 11:16:47.877992 'CAPA\r\n' 11:16:47.878105 Received DATA (on stdin) 11:16:47.878111 > 27 bytes data, server => client 11:16:47.878117 '-ERR Unrecognized command\r\n' 11:16:47.878149 < 21 bytes data, client => server 11:16:47.878155 'RETR verifiedserver\r\n' 11:16:47.878226 Received DATA (on stdin) 11:16:47.878237 > 26 bytes data, server => client 11:16:47.878243 '+OK Mail transfer starts\r\n' 11:16:47.878260 Received DATA (on stdin) 11:16:47.878265 > 18 bytes data, server => client 11:16:47.878270 'WE ROOLZ: 108636\r\n' 11:16:47.878277 Received DATA (on stdin) 11:16:47.878281 > 3 bytes data, server => client 11:16:47.878286 '.\r\n' 11:16:47.919522 < 6 bytes data, client => server 11:16:47.919539 'QUIT\r\n' 11:16:47.919653 Received DATA (on stdin) 11:16:47.919660 > 34 bytes data, server => client 11:16:47.919666 '+OK curl POP3 server signing off\r\n' 11:16:47.920156 ====> Client disconnect 11:16:47.920254 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 850 === End of file server.cmd === Start of file valgrind850 ==108751== ==108751== Process terminating with default action of signal 4 (SIGILL) ==108751== Illegal opcode at address 0x10B06D ==108751== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108751== by 0x10B06D: main (tool_main.c:234) === End of file valgrind850 startnew: perl -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 36653 (log/2/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:36653/verifiedserver" 2>log/2/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108685 port 36653 * pid pop3 => 108685 108685 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/2/valgrind854 ../src/curl -q --output log/2/curl854.out --include --trace-ascii log/2/trace854 --trace-time pop3://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/7/valgrind855 ../src/curl -q --output log/7/curl855.out --include --trace-ascii log/7/trace855 --trace-time pop3://127.0.0.1:34795/855 -u user:secret > log/7/stdout855 2> log/7/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/1/valgrind856 ../src/curl -q --output log/1/curl856.out --include --trace-ascii log/1/trace856 --trace-time pop3://127.0.0.1:43451/856 -u user:wrong > log/1/stdout856 2> log/1/stderr856 0.1:36653/ -u user:secret > log/2/stdout854 2> log/2/stderr854 854: 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 854 === Start of file pop3_server.log 11:16:46.455569 POP3 server listens on port IPv4/36653 11:16:46.455641 logged pid 108685 in log/2/server/pop3_server.pid 11:16:46.455662 Awaiting input 11:16:47.439842 ====> Client connect 11:16:47.439952 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.440129 < "CAPA" 11:16:47.440155 > "-ERR Unrecognized command[CR][LF]" 11:16:47.440245 < "RETR verifiedserver" 11:16:47.440262 return proof we are we 11:16:47.440274 > "+OK Mail transfer starts[CR][LF]" 11:16:47.440284 > "WE ROOLZ: 108685[CR][LF]" 11:16:47.440293 > ".[CR][LF]" 11:16:47.482344 < "QUIT" 11:16:47.482390 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.482811 MAIN sockfilt said DISC 11:16:47.482831 ====> Client disconnected 11:16:47.482863 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.972674 Running IPv4 version 11:16:46.972750 Listening on port 36653 11:16:46.972780 Wrote pid 108689 to log/2/server/pop3_sockfilt.pid 11:16:46.972803 Wrote port 36653 to log/2/server/pop3_server.port 11:16:46.972817 Received PING (on stdin) 11:16:47.957106 ====> Client connect 11:16:47.957278 Received DATA (on stdin) 11:16:47.957285 > 178 bytes data, server => client 11:16:47.957292 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.957297 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.957303 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.957307 've \r\n' 11:16:47.957353 < 6 bytes data, client => server 11:16:47.957359 'CAPA\r\n' 11:16:47.957475 Received DATA (on stdin) 11:16:47.957482 > 27 bytes data, server => client 11:16:47.957487 '-ERR Unrecognized command\r\n' 11:16:47.957519 < 21 bytes data, client => server 11:16:47.957525 'RETR verifiedserver\r\n' 11:16:47.957612 Received DATA (on stdin) 11:16:47.957617 > 26 bytes data, server => client 11:16:47.957622 '+OK Mail transfer starts\r\n' 11:16:47.957634 Received DATA (on stdin) 11:16:47.957639 > 18 bytes data, server => client 11:16:47.957644 'WE ROOLZ: 108685\r\n' 11:16:47.957651 Received DATA (on stdin) 11:16:47.957655 > 3 bytes data, server => client 11:16:47.957660 '.\r\n' 11:16:47.999533 < 6 bytes data, client => server 11:16:47.999558 'QUIT\r\n' 11:16:47.999719 Received DATA (on stdin) 11:16:47.999729 > 34 bytes data, server => client 11:16:47.999738 '+OK curl POP3 server signing off\r\n' 11:16:48.000088 ====> Client disconnect 11:16:48.000185 Received ACKD (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 ==108977== ==108977== Process terminating with default action of signal 4 (SIGILL) ==108977== Illegal opcode at address 0x10B06D ==108977== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108977== by 0x10B06D: main (tool_main.c:234) === End of file valgrind854 startnew: perl -I/startdir/src/curl/tests /startdir/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 34795 (log/7/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:34795/verifiedserver" 2>log/7/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108686 port 34795 * pid pop3 => 108686 108686 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/7/valgrind855 ../src/curl -q --output log/7/curl855.out --include --trace-ascii log/7/trace855 --trace-time pop3://127.0.0.1:34795/855 -u user:secret > log/7/stdout855 2> log/7/stderr855 855: 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 855 === Start of file pop3_server.log 11:16:46.458471 POP3 server listens on port IPv4/34795 11:16:46.458525 logged pid 108686 in log/7/server/pop3_server.pid 11:16:46.458541 Awaiting input 11:16:47.440067 ====> Client connect 11:16:47.440184 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.440393 < "CAPA" 11:16:47.440426 > "-ERR Unrecognized command[CR][LF]" 11:16:47.440524 < "RETR verifiedserver" 11:16:47.440544 return proof we are we 11:16:47.440556 > "+OK Mail transfer starts[CR][LF]" 11:16:47.440567 > "WE ROOLZ: 108686[CR][LF]" 11:16:47.440577 > ".[CR][LF]" 11:16:47.482325 < "QUIT" 11:16:47.482369 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.482681 MAIN sockfilt said DISC 11:16:47.482702 ====> Client disconnected 11:16:47.482742 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.975630 Running IPv4 version 11:16:46.975681 Listening on port 34795 11:16:46.975704 Wrote pid 108690 to log/7/server/pop3_sockfilt.pid 11:16:46.975722 Wrote port 34795 to log/7/server/pop3_server.port 11:16:46.975732 Received PING (on stdin) 11:16:47.957334 ====> Client connect 11:16:47.957515 Received DATA (on stdin) 11:16:47.957524 > 178 bytes data, server => client 11:16:47.957533 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.957541 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.957549 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.957555 've \r\n' 11:16:47.957611 < 6 bytes data, client => server 11:16:47.957619 'CAPA\r\n' 11:16:47.957748 Received DATA (on stdin) 11:16:47.957755 > 27 bytes data, server => client 11:16:47.957761 '-ERR Unrecognized command\r\n' 11:16:47.957796 < 21 bytes data, client => server 11:16:47.957802 'RETR verifiedserver\r\n' 11:16:47.957897 Received DATA (on stdin) 11:16:47.957902 > 26 bytes data, server => client 11:16:47.957908 '+OK Mail transfer starts\r\n' 11:16:47.957921 Received DATA (on stdin) 11:16:47.957926 > 18 bytes data, server => client 11:16:47.957932 'WE ROOLZ: 108686\r\n' 11:16:47.957938 Received DATA (on stdin) 11:16:47.957943 > 3 bytes data, server => client 11:16:47.957948 '.\r\n' 11:16:47.999519 < 6 bytes data, client => server 11:16:47.999541 'QUIT\r\n' 11:16:47.999696 Received DATA (on stdin) 11:16:47.999705 > 34 bytes data, server => client 11:16:47.999713 '+OK curl POP3 server signing off\r\n' 11:16:47.999962 ====> Client disconnect 11:16:48.000069 Received ACKD (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 ==108975== ==108975== Process terminating with default action of signal 4 (SIGILL) ==108975== Illegal opcode at address 0x10B06D ==108975== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108975== by 0x10B06D: main (tool_main.c:234) === End of file valgrind855 startnew: perl -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 43451 (log/1/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:43451/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/5/valgrind853 ../src/curl -q --output log/5/curl853.out --include --trace-ascii log/5/trace853 --trace-time pop3://127.0.0.1:41007/ -u user:secret > log/5/stdout853 2> log/5/stderr853 erifiedserver" 2>log/1/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108687 port 43451 * pid pop3 => 108687 108687 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/1/valgrind856 ../src/curl -q --output log/1/curl856.out --include --trace-ascii log/1/trace856 --trace-time pop3://127.0.0.1:43451/856 -u user:wrong > log/1/stdout856 2> log/1/stderr856 856: 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 856 === Start of file pop3_server.log 11:16:46.473517 POP3 server listens on port IPv4/43451 11:16:46.473574 logged pid 108687 in log/1/server/pop3_server.pid 11:16:46.473590 Awaiting input 11:16:47.457455 ====> Client connect 11:16:47.457569 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.457750 < "CAPA" 11:16:47.457776 > "-ERR Unrecognized command[CR][LF]" 11:16:47.457870 < "RETR verifiedserver" 11:16:47.457891 return proof we are we 11:16:47.457903 > "+OK Mail transfer starts[CR][LF]" 11:16:47.457916 > "WE ROOLZ: 108687[CR][LF]" 11:16:47.457928 > ".[CR][LF]" 11:16:47.503065 < "QUIT" 11:16:47.503118 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.503402 MAIN sockfilt said DISC 11:16:47.503425 ====> Client disconnected 11:16:47.503473 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.990666 Running IPv4 version 11:16:46.990724 Listening on port 43451 11:16:46.990747 Wrote pid 108692 to log/1/server/pop3_sockfilt.pid 11:16:46.990764 Wrote port 43451 to log/1/server/pop3_server.port 11:16:46.990775 Received PING (on stdin) 11:16:47.974717 ====> Client connect 11:16:47.974895 Received DATA (on stdin) 11:16:47.974902 > 178 bytes data, server => client 11:16:47.974909 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.974915 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.974921 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.974926 've \r\n' 11:16:47.974972 < 6 bytes data, client => server 11:16:47.974978 'CAPA\r\n' 11:16:47.975096 Received DATA (on stdin) 11:16:47.975103 > 27 bytes data, server => client 11:16:47.975108 '-ERR Unrecognized command\r\n' 11:16:47.975142 < 21 bytes data, client => server 11:16:47.975148 'RETR verifiedserver\r\n' 11:16:47.975217 Received DATA (on stdin) 11:16:47.975226 > 26 bytes data, server => client 11:16:47.975233 '+OK Mail transfer starts\r\n' 11:16:47.975252 Received DATA (on stdin) 11:16:47.975259 > 18 bytes data, server => client 11:16:47.975268 'WE ROOLZ: 108687\r\n' 11:16:47.975278 Received DATA (on stdin) 11:16:47.975285 > 3 bytes data, server => client 11:16:47.975291 '.\r\n' 11:16:48.020262 < 6 bytes data, client => server 11:16:48.020287 'QUIT\r\n' 11:16:48.020444 Received DATA (on stdin) 11:16:48.020455 > 34 bytes data, server => client 11:16:48.020461 '+OK curl POP3 server signing off\r\n' 11:16:48.020687 ====> Client disconnect 11:16:48.020799 Received ACKD (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 ==109063== ==109063== Process terminating with default action of signal 4 (SIGILL) ==109063== Illegal opcode at address 0x10B06D ==109063== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109063== by 0x10B06D: main (tool_main.c:234) === End of file valgrind856 startnew: perl -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 41007 (log/5/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:41007/verifiedserver" 2>log/5/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108684 port 41007 * pid pop3 => 108684 108684 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/5/valgrind853 ../src/curl -q --output log/5/curl853.out --include --trace-ascii log/5/trace853 --trace-time pop3://127.0.0.1:41007/ -u user:secret > log/5/stdout853 2> log/5/stderr853 853: 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 853 === Start of file pop3_server.log 11:16:46.454577 POP3 server listens on port IPv4/41007 11:16:46.454651 logged pid 108684 in log/5/server/pop3_server.pid 11:16:46.454671 Awaiting input 11:16:47.432250 ====> Client connect 11:16:47.432366 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.432580 < "CAPA" 11:16:47.432606 > "-ERR Unrecognized command[CR][LF]" 11:16:47.432707 < "RETR verifiedserver" 11:16:47.432727 return proof we are we 11:16:47.432742 > "+OK Mail transfer starts[CR][LF]" 11:16:47.432755 > "WE ROOLZ: 108684[CR][LF]" 11:16:47.432767 > ".[CR][LF]" 11:16:47.475676 < "QUIT" 11:16:47.475714 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.476326 MAIN sockfilt said DISC 11:16:47.476343 ====> Client disconnected 11:16:47.476383 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.971685 Running IPv4 version 11:16:46.971764 Listening on port 41007 11:16:46.971792 Wrote pid 108688 to log/5/server/pop3_sockfilt.pid 11:16:46.971814 Wrote port 41007 to log/5/server/pop3_server.port 11:16:46.971828 Received PING (on stdin) 11:16:47.949511 ====> Client connect 11:16:47.949697 Received DATA (on stdin) 11:16:47.949706 > 178 bytes data, server => client 11:16:47.949715 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.949723 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.949731 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.949737 've \r\n' 11:16:47.949797 < 6 bytes data, client => server 11:16:47.949805 'CAPA\r\n' 11:16:47.949927 Received DATA (on stdin) 11:16:47.949933 > 27 bytes data, server => client 11:16:47.949939 '-ERR Unrecognized command\r\n' 11:16:47.949973 < 21 bytes data, client => server 11:16:47.949981 'RETR verifiedserver\r\n' 11:16:47.950063 Received DATA (on stdin) 11:16:47.950075 > 26 bytes data, server => client 11:16:47.950084 '+OK Mail transfer starts\r\n' 11:16:47.950106 Received DATA (on stdin) 11:16:47.950113 > 18 bytes data, server => client 11:16:47.950119 'WE ROOLZ: 108684\r\n' 11:16:47.950128 Received DATA (on stdin) 11:16:47.950134 > 3 bytes data, server => client 11:16:47.950140 '.\r\n' 11:16:47.992852 < 6 bytes data, client => server 11:16:47.992880 'QUIT\r\n' 11:16:47.993037 Received DATA (on stdin) 11:16:47.993045 > 34 bytes data, server => client 11:16:47.993051 '+OK curl POP3 server signing off\r\n' 11:16:47.993614 ====> Client disconnect 11:16:47.993704 Received ACKD (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 ==108954== ==108954== Process terminating with default action of signal 4 (SIGILL) ==108954== Illegal opcode at address 0x10B06D ==108954== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==108954== by 0x10B06D: 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/3/valgrind857 ../src/curl -q --output log/3/curl857.out --include --trace-ascii log/3/trace857 --trace-time pop3://127.0.0.1:45905/857 -u user:secret > log/3/stdout857 2> log/3/stderr857 CMD (33792): ../libtool --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/valgrind858 ../src/curl -q --output log/6/curl858.out --include --trace-ascii log/6/trace858 --trace-time pop3://127.0.0.1:33797/858 -u user:secret -X DELE -I > log/6/stdout858 2> log/6/stderr858 End of file valgrind853 startnew: perl -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 45905 (log/3/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:45905/verifiedserver" 2>log/3/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108694 port 45905 * pid pop3 => 108694 108694 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/3/valgrind857 ../src/curl -q --output log/3/curl857.out --include --trace-ascii log/3/trace857 --trace-time pop3://127.0.0.1:45905/857 -u user:secret > log/3/stdout857 2> log/3/stderr857 857: 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 857 === Start of file pop3_server.log 11:16:46.587436 POP3 server listens on port IPv4/45905 11:16:46.587492 logged pid 108694 in log/3/server/pop3_server.pid 11:16:46.587509 Awaiting input 11:16:47.583897 ====> Client connect 11:16:47.584054 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.584296 < "CAPA" 11:16:47.584330 > "-ERR Unrecognized command[CR][LF]" 11:16:47.584454 < "RETR verifiedserver" 11:16:47.584478 return proof we are we 11:16:47.584495 > "+OK Mail transfer starts[CR][LF]" 11:16:47.584507 > "WE ROOLZ: 108694[CR][LF]" 11:16:47.584521 > ".[CR][LF]" 11:16:47.629066 < "QUIT" 11:16:47.629116 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.629887 MAIN sockfilt said DISC 11:16:47.629907 ====> Client disconnected 11:16:47.629954 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.104567 Running IPv4 version 11:16:46.104647 Listening on port 45905 11:16:46.104671 Wrote pid 108695 to log/3/server/pop3_sockfilt.pid 11:16:46.104688 Wrote port 45905 to log/3/server/pop3_server.port 11:16:46.104699 Received PING (on stdin) 11:16:47.101142 ====> Client connect 11:16:47.101384 Received DATA (on stdin) 11:16:47.101394 > 178 bytes data, server => client 11:16:47.101403 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.101412 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.101420 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.101427 've \r\n' 11:16:47.101490 < 6 bytes data, client => server 11:16:47.101498 'CAPA\r\n' 11:16:47.101655 Received DATA (on stdin) 11:16:47.101664 > 27 bytes data, server => client 11:16:47.101672 '-ERR Unrecognized command\r\n' 11:16:47.101716 < 21 bytes data, client => server 11:16:47.101724 'RETR verifiedserver\r\n' 11:16:47.101844 Received DATA (on stdin) 11:16:47.101852 > 26 bytes data, server => client 11:16:47.101859 '+OK Mail transfer starts\r\n' 11:16:47.101877 Received DATA (on stdin) 11:16:47.101884 > 18 bytes data, server => client 11:16:47.101891 'WE ROOLZ: 108694\r\n' 11:16:47.101900 Received DATA (on stdin) 11:16:47.101906 > 3 bytes data, server => client 11:16:47.101913 '.\r\n' 11:16:47.146224 < 6 bytes data, client => server 11:16:47.146253 'QUIT\r\n' 11:16:47.146440 Received DATA (on stdin) 11:16:47.146448 > 34 bytes data, server => client 11:16:47.146456 '+OK curl POP3 server signing off\r\n' 11:16:47.147169 ====> Client disconnect 11:16:47.147275 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 ==109173== ==109173== Process terminating with default action of signal 4 (SIGILL) ==109173== Illegal opcode at address 0x10B06D ==109173== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109173== by 0x10B06D: main (tool_main.c:234) === End of file valgrind857 startnew: perl -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 33797 (log/6/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:33797/verifiedserver" 2>log/6/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108696 port 33797 * pid pop3 => 108696 108696 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/6/valgrind858 ../src/curl -q --output log/6/curl858.out --include --trace-ascii log/6/trace858 --trace-time pop3://127.0.0.1:33797/858 -u user:secret -X DELE -I > log/6/stdout858 2> log/6/stderr858 858: 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 858 === Start of file pop3_server.log 11:16:46.654902 POP3 server listens on port IPv4/33797 11:16:46.654956 logged pid 108696 in log/6/server/pop3_server.pid 11:16:46.654972 Awaiting input 11:16:47.651819 ====> Client connect 11:16:47.651972 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.652262 < "CAPA" 11:16:47.652303 > "-ERR Unrecognized command[CR][LF]" 11:16:47.652450 < "RETR verifiedserver" 11:16:47.652475 return proof we are we 11:16:47.652494 > "+OK Mail transfer starts[CR][LF]" 11:16:47.652509 > "WE ROOLZ: 108696[CR][LF]" 11:16:47.652524 > ".[CR][LF]" 11:16:47.696530 < "QUIT" 11:16:47.696582 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.697203 MAIN sockfilt said DISC 11:16:47.697224 ====> Client disconnected 11:16:47.697271 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.172057 Running IPv4 version 11:16:46.172115 Listening on port 33797 11:16:46.172138 Wrote pid 108697 to log/6/server/pop3_sockfilt.pid 11:16:46.172155 Wrote port 33797 to log/6/server/pop3_server.port 11:16:46.172166 Received PING (on stdin) 11:16:47.169063 ====> Client connect 11:16:47.169309 Received DATA (on stdin) 11:16:47.169321 > 178 bytes data, server => client 11:16:47.169331 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.169340 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.169349 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.169356 've \r\n' 11:16:47.169439 < 6 bytes data, client => server 11:16:47.169452 'CAPA\r\n' 11:16:47.169630 Received DATA (on stdin) 11:16:47.169641 > 27 bytes data, server => client 11:16:47.169649 '-ERR Unrecognized command\r\n' 11:16:47.169703 < 21 bytes data, client => server 11:16:47.169712 'RETR verifiedserver\r\n' 11:16:47.169825 Received DATA (on stdin) 11:16:47.169839 > 26 bytes data, server => client 11:16:47.169848 '+OK Mail transfer starts\r\n' 11:16:47.169870 Received DATA (on stdin) 11:16:47.169878 > 18 bytes data, server => client 11:16:47.169885 'WE ROOLZ: 108696\r\n' 11:16:47.169894 Received DATA (on stdin) 11:16:47.169900 > 3 bytes data, server => client 11:16:47.169907 '.\r\n' 11:16:47.213691 < 6 bytes data, client => server 11:16:47.213720 'QUIT\r\n' 11:16:47.213909 Received DATA (on stdin) 11:16:47.213918 > 34 bytes data, server => client 11:16:47.213926 '+OK curl POP3 server signing off\r\n' 11:16:47.21448CMD (33792): ../libtool --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-time pop3://127.0.0.1:38567 -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/10/valgrind860 ../src/curl -q --output log/10/curl860.out --include --trace-ascii log/10/trace860 --trace-time pop3://127.0.0.1:33727 -u user:secret -X NOOP -I > log/10/stdout860 2> log/10/stderr860 6 ====> Client disconnect 11:16:47.214596 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 858 === End of file server.cmd === Start of file valgrind858 ==109246== ==109246== Process terminating with default action of signal 4 (SIGILL) ==109246== Illegal opcode at address 0x10B06D ==109246== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109246== by 0x10B06D: main (tool_main.c:234) === End of file valgrind858 startnew: perl -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 38567 (log/4/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:38567/verifiedserver" 2>log/4/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108698 port 38567 * pid pop3 => 108698 108698 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-time pop3://127.0.0.1:38567 -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 pop3_server.log 11:16:46.684541 POP3 server listens on port IPv4/38567 11:16:46.684594 logged pid 108698 in log/4/server/pop3_server.pid 11:16:46.684610 Awaiting input 11:16:47.681974 ====> Client connect 11:16:47.682148 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.685643 < "CAPA" 11:16:47.685693 > "-ERR Unrecognized command[CR][LF]" 11:16:47.685825 < "RETR verifiedserver" 11:16:47.685849 return proof we are we 11:16:47.685867 > "+OK Mail transfer starts[CR][LF]" 11:16:47.685880 > "WE ROOLZ: 108698[CR][LF]" 11:16:47.685893 > ".[CR][LF]" 11:16:47.729082 < "QUIT" 11:16:47.729130 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.729974 MAIN sockfilt said DISC 11:16:47.729997 ====> Client disconnected 11:16:47.730044 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.201663 Running IPv4 version 11:16:46.201740 Listening on port 38567 11:16:46.201777 Wrote pid 108699 to log/4/server/pop3_sockfilt.pid 11:16:46.201795 Wrote port 38567 to log/4/server/pop3_server.port 11:16:46.201806 Received PING (on stdin) 11:16:47.199222 ====> Client connect 11:16:47.200275 Received DATA (on stdin) 11:16:47.200297 > 178 bytes data, server => client 11:16:47.200307 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.200316 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.200324 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.200331 've \r\n' 11:16:47.202793 < 6 bytes data, client => server 11:16:47.202814 'CAPA\r\n' 11:16:47.203020 Received DATA (on stdin) 11:16:47.203029 > 27 bytes data, server => client 11:16:47.203037 '-ERR Unrecognized command\r\n' 11:16:47.203085 < 21 bytes data, client => server 11:16:47.203093 'RETR verifiedserver\r\n' 11:16:47.203216 Received DATA (on stdin) 11:16:47.203224 > 26 bytes data, server => client 11:16:47.203231 '+OK Mail transfer starts\r\n' 11:16:47.203249 Received DATA (on stdin) 11:16:47.203256 > 18 bytes data, server => client 11:16:47.203263 'WE ROOLZ: 108698\r\n' 11:16:47.203272 Received DATA (on stdin) 11:16:47.203278 > 3 bytes data, server => client 11:16:47.203285 '.\r\n' 11:16:47.246260 < 6 bytes data, client => server 11:16:47.246287 'QUIT\r\n' 11:16:47.246458 Received DATA (on stdin) 11:16:47.246467 > 34 bytes data, server => client 11:16:47.246476 '+OK curl POP3 server signing off\r\n' 11:16:47.247255 ====> Client disconnect 11:16:47.247368 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 859 === End of file server.cmd === Start of file valgrind859 ==109297== ==109297== Process terminating with default action of signal 4 (SIGILL) ==109297== Illegal opcode at address 0x10B06D ==109297== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109297== by 0x10B06D: main (tool_main.c:234) === End of file valgrind859 startnew: perl -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 33727 (log/10/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:33727/verifiedserver" 2>log/10/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108700 port 33727 * pid pop3 => 108700 108700 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/10/valgrind860 ../src/curl -q --output log/10/curl860.out --include --trace-ascii log/10/trace860 --trace-time pop3://127.0.0.1:33727 -u user:secret -X NOOP -I > log/10/stdout860 2> log/10/stderr860 860: 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 860 === Start of file pop3_server.log 11:16:46.749818 POP3 server listens on port IPv4/33727 11:16:46.749884 logged pid 108700 in log/10/server/pop3_server.pid 11:16:46.749904 Awaiting input 11:16:47.747489 ====> Client connect 11:16:47.747638 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.747878 < "CAPA" 11:16:47.747912 > "-ERR Unrecognized command[CR][LF]" 11:16:47.748029 < "RETR verifiedserver" 11:16:47.748051 return proof we are we 11:16:47.748068 > "+OK Mail transfer starts[CR][LF]" 11:16:47.748080 > "WE ROOLZ: 108700[CR][LF]" 11:16:47.748093 > ".[CR][LF]" 11:16:47.789420 < "QUIT" 11:16:47.789462 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.790079 MAIN sockfilt said DISC 11:16:47.790108 ====> Client disconnected 11:16:47.790150 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.266946 Running IPv4 version 11:16:46.267011 Listening on port 33727 11:16:46.267036 Wrote pid 108701 to log/10/server/pop3_sockfilt.pid 11:16:46.267056 Wrote port 33727 to log/10/server/pop3_server.port 11:16:46.267069 Received PING (on stdin) 11:16:47.264737 ====> Client connect 11:16:47.264970 Received DATA (on stdin) 11:16:47.264980 > 178 bytes data, server => client 11:16:47.264989 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.264998 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.265006 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.265012 've \r\n' 11:16:47.265077 < 6 bytes data, client => server 11:16:47.265084 'CAPA\r\n' 11:16:47.265236 Received DATA (on stdin) 11:16:47.265244 > 27 bytes data, server => client 11:16:47.265252 '-ERR Unrecognized command\r\n' 11:16:47.265293 < 21 bytes data, client => server 11:16:47.265301 'RETR verifiedserver\r\n' 11:16:47.265471 Received DATA (on stdin) 11:16:47.265486 > 26 bytes data, server => client 11:16:47.265495 '+OK Mail transfer starts\r\n' 11:16:47.265518 Received DATA (on 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/8/valgrind861 ../src/curl -q --output log/8/curl861.out --include --trace-ascii log/8/trace861 --trace-time pop3://127.0.0.1:39353 -u user:secret -X UIDL > log/8/stdout861 2> log/8/stderr861 CMD (33792): ../libtool --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/valgrind863 ../src/curl -q --output log/11/curl863.out --include --trace-ascii log/11/trace863 --trace-time pop3://127.0.0.1:44127 -u user:secret -X RSET -I > log/11/stdout863 2> log/11/stderr863 CMD (33792): ../libtool --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/valgrind864 ../src/curl -q --output log/12/curl864.out --include --trace-ascii log/12/trace864 --trace-time pop3://127.0.0.1:45767/864 -u user:secret > log/12/stdout864 2> log/12/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/9/valgrind862 ../src/curl -q --output log/9/curl862.out --include --trace-ascii log/9/trace862 --trace-time pop3://127.0.0.1:37419 -u user:secret -X 'TOP 862 0' > log/9/stdout862 2> log/9/stderr862 tdin) 11:16:47.265526 > 18 bytes data, server => client 11:16:47.265534 'WE ROOLZ: 108700\r\n' 11:16:47.265543 Received DATA (on stdin) 11:16:47.265550 > 3 bytes data, server => client 11:16:47.265557 '.\r\n' 11:16:47.306595 < 6 bytes data, client => server 11:16:47.306619 'QUIT\r\n' 11:16:47.306790 Received DATA (on stdin) 11:16:47.306799 > 34 bytes data, server => client 11:16:47.306807 '+OK curl POP3 server signing off\r\n' 11:16:47.307347 ====> Client disconnect 11:16:47.307472 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 860 === End of file server.cmd === Start of file valgrind860 ==109375== ==109375== Process terminating with default action of signal 4 (SIGILL) ==109375== Illegal opcode at address 0x10B06D ==109375== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109375== by 0x10B06D: main (tool_main.c:234) === End of file valgrind860 startnew: perl -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 39353 (log/8/server/pop3_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "pop3://127.0.0.1:39353/verifiedserver" 2>log/8/pop3_verify.log RUN: Verifying our test pop3 server took 0 seconds RUN: POP3 server is PID 108702 port 39353 * pid pop3 => 108702 108702 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/8/valgrind861 ../src/curl -q --output log/8/curl861.out --include --trace-ascii log/8/trace861 --trace-time pop3://127.0.0.1:39353 -u user:secret -X UIDL > log/8/stdout861 2> log/8/stderr861 861: 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 861 === Start of file pop3_server.log 11:16:46.773363 POP3 server listens on port IPv4/39353 11:16:46.773425 logged pid 108702 in log/8/server/pop3_server.pid 11:16:46.773444 Awaiting input 11:16:47.771270 ====> Client connect 11:16:47.771415 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 11:16:47.771680 < "CAPA" 11:16:47.771719 > "-ERR Unrecognized command[CR][LF]" 11:16:47.771861 < "RETR verifiedserver" 11:16:47.771888 return proof we are we 11:16:47.771907 > "+OK Mail transfer starts[CR][LF]" 11:16:47.771921 > "WE ROOLZ: 108702[CR][LF]" 11:16:47.771935 > ".[CR][LF]" 11:16:47.813176 < "QUIT" 11:16:47.813225 > "+OK curl POP3 server signing off[CR][LF]" 11:16:47.813379 MAIN sockfilt said DISC 11:16:47.813404 ====> Client disconnected 11:16:47.813452 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 11:16:46.290504 Running IPv4 version 11:16:46.290561 Listening on port 39353 11:16:46.290588 Wrote pid 108703 to log/8/server/pop3_sockfilt.pid 11:16:46.290608 Wrote port 39353 to log/8/server/pop3_server.port 11:16:46.290621 Received PING (on stdin) 11:16:47.288523 ====> Client connect 11:16:47.288750 Received DATA (on stdin) 11:16:47.288765 > 178 bytes data, server => client 11:16:47.288776 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 11:16:47.288784 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 11:16:47.288793 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 11:16:47.288800 've \r\n' 11:16:47.288864 < 6 bytes data, client => server 11:16:47.288875 'CAPA\r\n' 11:16:47.289046 Received DATA (on stdin) 11:16:47.289056 > 27 bytes data, server => client 11:16:47.289064 '-ERR Unrecognized command\r\n' 11:16:47.289112 < 21 bytes data, client => server 11:16:47.289121 'RETR verifiedserver\r\n' 11:16:47.289259 Received DATA (on stdin) 11:16:47.289269 > 26 bytes data, server => client 11:16:47.289276 '+OK Mail transfer starts\r\n' 11:16:47.289297 Received DATA (on stdin) 11:16:47.289304 > 18 bytes data, server => client 11:16:47.289311 'WE ROOLZ: 108702\r\n' 11:16:47.289320 Received DATA (on stdin) 11:16:47.289326 > 3 bytes data, server => client 11:16:47.289333 '.\r\n' 11:16:47.330337 < 6 bytes data, client => server 11:16:47.330365 'QUIT\r\n' 11:16:47.330550 Received DATA (on stdin) 11:16:47.330558 > 34 bytes data, server => client 11:16:47.330566 '+OK curl POP3 server signing off\r\n' 11:16:47.330659 ====> Client disconnect 11:16:47.330776 Received ACKD (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 ==109411== ==109411== Process terminating with default action of signal 4 (SIGILL) ==109411== Illegal opcode at address 0x10B06D ==109411== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109411== by 0x10B06D: main (tool_main.c:234) === End of file valgrind861 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/11/valgrind863 ../src/curl -q --output log/11/curl863.out --include --trace-ascii log/11/trace863 --trace-time pop3://127.0.0.1:44127 -u user:secret -X RSET -I > log/11/stdout863 2> log/11/stderr863 863: 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 863 === Start of file server.cmd Testnum 863 === End of file server.cmd === Start of file valgrind863 ==109474== ==109474== Process terminating with default action of signal 4 (SIGILL) ==109474== Illegal opcode at address 0x10B06D ==109474== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109474== by 0x10B06D: main (tool_main.c:234) === End of file valgrind863 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/12/valgrind864 ../src/curl -q --output log/12/curl864.out --include --trace-ascii log/12/trace864 --trace-time pop3://127.0.0.1:45767/864 -u user:secret > log/12/stdout864 2> log/12/stderr864 864: 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 864 === 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 ==109477== ==109477== Process terminating with default action of signal 4 (SIGILL) ==109477== Illegal opcode at address 0x10B06D ==109477== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109477== by 0x10B06D: main (tool_main.c:234) === End of file valgrind864 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-time pop3://127.0.0.1:37419 -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 server.cmd CAPA TOP USER Testnum 862 === End of file server.cmd === Start of file valgrind862 ==109480== ==109480== Process terminating with default action of signal 4 (SIGILL) ==109480== Illegal opcode at address 0x10B06D ==109480== CMD (33792): ../libtool --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/valgrind865 ../src/curl -q --output log/2/curl865.out --include --trace-ascii log/2/trace865 --trace-time pop3://127.0.0.1:36653/865 -u user:secret > log/2/stdout865 2> log/2/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/1/valgrind867 ../src/curl -q --output log/1/curl867.out --include --trace-ascii log/1/trace867 --trace-time pop3://127.0.0.1:43451/867 -u user:secret > log/1/stdout867 2> log/1/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/5/valgrind868 ../src/curl -q --output log/5/curl868.out --include --trace-ascii log/5/trace868 --trace-time pop3://127.0.0.1:41007/868 -u testuser:testpass > log/5/stdout868 2> log/5/stderr868 CMD (33792): ../libtool --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/valgrind866 ../src/curl -q --output log/7/curl866.out --include --trace-ascii log/7/trace866 --trace-time pop3://127.0.0.1:34795/866 -u user:secret > log/7/stdout866 2> log/7/stderr866 CMD (33792): ../libtool --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/valgrind871 ../src/curl -q --output log/6/curl871.out --include --trace-ascii log/6/trace871 --trace-time pop3://127.0.0.1:33797/871 -u user:secret --sasl-ir > log/6/stdout871 2> log/6/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/valgrind870 ../src/curl -q --output log/3/curl870.out --include --trace-ascii log/3/trace870 --trace-time pop3://127.0.0.1:45905/870 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout870 2> log/3/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/4/valgrind872 ../src/curl -q --output log/4/curl872.out --include --trace-ascii log/4/trace872 --trace-time pop3://127.0.0.1:38567/872 -u user:secret --sasl-ir > log/4/stdout872 2> log/4/stderr872 at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109480== by 0x10B06D: main (tool_main.c:234) === End of file valgrind862 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost test 0877 SKIPPED: got unexpected host name back, LD_PRELOAD failed 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/2/valgrind865 ../src/curl -q --output log/2/curl865.out --include --trace-ascii log/2/trace865 --trace-time pop3://127.0.0.1:36653/865 -u user:secret > log/2/stdout865 2> log/2/stderr865 865: 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 865 === 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 ==109623== ==109623== Process terminating with default action of signal 4 (SIGILL) ==109623== Illegal opcode at address 0x10B06D ==109623== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109623== by 0x10B06D: main (tool_main.c:234) === End of file valgrind865 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost 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/1/valgrind867 ../src/curl -q --output log/1/curl867.out --include --trace-ascii log/1/trace867 --trace-time pop3://127.0.0.1:43451/867 -u user:secret > log/1/stdout867 2> log/1/stderr867 867: 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 867 === 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 ==109644== ==109644== Process terminating with default action of signal 4 (SIGILL) ==109644== Illegal opcode at address 0x10B06D ==109644== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109644== by 0x10B06D: main (tool_main.c:234) === End of file valgrind867 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/5/valgrind868 ../src/curl -q --output log/5/curl868.out --include --trace-ascii log/5/trace868 --trace-time pop3://127.0.0.1:41007/868 -u testuser:testpass > log/5/stdout868 2> log/5/stderr868 868: 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 868 === 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 ==109672== ==109672== Process terminating with default action of signal 4 (SIGILL) ==109672== Illegal opcode at address 0x10B06D ==109672== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109672== by 0x10B06D: main (tool_main.c:234) === End of file valgrind868 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/7/valgrind866 ../src/curl -q --output log/7/curl866.out --include --trace-ascii log/7/trace866 --trace-time pop3://127.0.0.1:34795/866 -u user:secret > log/7/stdout866 2> log/7/stderr866 866: 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 866 === 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 ==109643== ==109643== Process terminating with default action of signal 4 (SIGILL) ==109643== Illegal opcode at address 0x10B06D ==109643== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109643== by 0x10B06D: main (tool_main.c:234) === End of file valgrind866 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/6/valgrind871 ../src/curl -q --output log/6/curl871.out --include --trace-ascii log/6/trace871 --trace-time pop3://127.0.0.1:33797/871 -u user:secret --sasl-ir > log/6/stdout871 2> log/6/stderr871 871: 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 871 === Start of file server.cmd AUTH PLAIN REPLY AUTH +OK Login successful Testnum 871 === End of file server.cmd === Start of file valgrind871 ==109836== ==109836== Process terminating with default action of signal 4 (SIGILL) ==109836== Illegal opcode at address 0x10B06D ==109836== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109836== by 0x10B06D: main (tool_main.c:234) === End of file valgrind871 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/3/valgrind870 ../src/curl -q --output log/3/curl870.out --include --trace-ascii log/3/trace870 --trace-time pop3://127.0.0.1:45905/870 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout870 2> log/3/stderr870 870: 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 870 === 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 ==109822== ==109822== Process terminating with default action of signal 4 (SIGILL) ==109822== Illegal opcode at address 0x10B06D ==109822== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109822== by 0x10B06D: main (tool_main.c:234) === End of file valgrind870 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/4/valgrind872 ../src/curl -q --output log/4/curl872.out --include --trace-ascii log/4/trace872 --trace-time pop3://127.0.0.1:38567/872 -u user:secret --sasl-ir > log/4/stdout872 2> log/4/stderr872 872: 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 872 === 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 ==1098CMD (33792): ../libtool --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/valgrind873 ../src/curl -q --output log/10/curl873.out --include --trace-ascii log/10/trace873 --trace-time pop3://127.0.0.1:33727/873 -u testuser:testpass --sasl-ir > log/10/stdout873 2> log/10/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/8/valgrind874 ../src/curl -q --output log/8/curl874.out --include --trace-ascii log/8/trace874 --trace-time pop3://127.0.0.1:39353/874 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/8/stdout874 2> log/8/stderr874 CMD (33792): ../libtool --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/valgrind879 ../src/curl -q --output log/9/curl879.out --include --trace-ascii log/9/trace879 --trace-time pop3://127.0.0.1:37419/879 -u user:secret > log/9/stdout879 2> log/9/stderr879 CMD (33792): ../libtool --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/valgrind875 ../src/curl -q --output log/11/curl875.out --include --trace-ascii log/11/trace875 --trace-time pop3://127.0.0.1:44127/%0d%0a/875 > log/11/stdout875 2> log/11/stderr875 CMD (33792): ../libtool --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/valgrind876 ../src/curl -q --output log/12/curl876.out --include --trace-ascii log/12/trace876 --trace-time pop3://127.0.0.1:45767/876 -u user:secret > log/12/stdout876 2> log/12/stderr876 CMD (33792): ../libtool --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/valgrind883 ../src/curl -q --output log/2/curl883.out --include --trace-ascii log/2/trace883 --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:36653/883' > log/2/stdout883 2> log/2/stderr883 CMD (33792): ../libtool --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/valgrind884 ../src/curl -q --output log/1/curl884.out --include --trace-ascii log/1/trace884 --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:43451/884' > log/1/stdout884 2> log/1/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/7/valgrind886 ../src/curl -q --output log/7/curl886.out --include --trace-ascii log/7/trace886 --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:34795/886' --sasl-ir > log/7/stdout886 2> log/7/stderr886 49== ==109849== Process terminating with default action of signal 4 (SIGILL) ==109849== Illegal opcode at address 0x10B06D ==109849== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109849== by 0x10B06D: main (tool_main.c:234) === End of file valgrind872 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/10/valgrind873 ../src/curl -q --output log/10/curl873.out --include --trace-ascii log/10/trace873 --trace-time pop3://127.0.0.1:33727/873 -u testuser:testpass --sasl-ir > log/10/stdout873 2> log/10/stderr873 873: 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 873 === 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 ==109966== ==109966== Process terminating with default action of signal 4 (SIGILL) ==109966== Illegal opcode at address 0x10B06D ==109966== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109966== by 0x10B06D: main (tool_main.c:234) === End of file valgrind873 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/8/valgrind874 ../src/curl -q --output log/8/curl874.out --include --trace-ascii log/8/trace874 --trace-time pop3://127.0.0.1:39353/874 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/8/stdout874 2> log/8/stderr874 874: 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 874 === Start of file server.cmd AUTH XOAUTH2 REPLY AUTH +OK Login successful Testnum 874 === End of file server.cmd === Start of file valgrind874 ==109994== ==109994== Process terminating with default action of signal 4 (SIGILL) ==109994== Illegal opcode at address 0x10B06D ==109994== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==109994== by 0x10B06D: main (tool_main.c:234) === End of file valgrind874 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/9/valgrind879 ../src/curl -q --output log/9/curl879.out --include --trace-ascii log/9/trace879 --trace-time pop3://127.0.0.1:37419/879 -u user:secret > log/9/stdout879 2> log/9/stderr879 879: 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 879 === 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 ==110106== ==110106== Process terminating with default action of signal 4 (SIGILL) ==110106== Illegal opcode at address 0x10B06D ==110106== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110106== by 0x10B06D: main (tool_main.c:234) === End of file valgrind879 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/11/valgrind875 ../src/curl -q --output log/11/curl875.out --include --trace-ascii log/11/trace875 --trace-time pop3://127.0.0.1:44127/%0d%0a/875 > log/11/stdout875 2> log/11/stderr875 curl returned 132, when expecting 3 875: exit FAILED == Contents of files in the log/11/ dir after test 875 === Start of file server.cmd Testnum 875 === End of file server.cmd === Start of file valgrind875 ==110065== ==110065== Process terminating with default action of signal 4 (SIGILL) ==110065== Illegal opcode at address 0x10B06D ==110065== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110065== by 0x10B06D: main (tool_main.c:234) === End of file valgrind875 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/12/valgrind876 ../src/curl -q --output log/12/curl876.out --include --trace-ascii log/12/trace876 --trace-time pop3://127.0.0.1:45767/876 -u user:secret > log/12/stdout876 2> log/12/stderr876 876: 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 876 === 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 ==110083== ==110083== Process terminating with default action of signal 4 (SIGILL) ==110083== Illegal opcode at address 0x10B06D ==110083== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110083== by 0x10B06D: main (tool_main.c:234) === End of file valgrind876 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/2/valgrind883 ../src/curl -q --output log/2/curl883.out --include --trace-ascii log/2/trace883 --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:36653/883' > log/2/stdout883 2> log/2/stderr883 883: 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 883 === Start of file server.cmd AUTH EXTERNAL REPLY AUTH + REPLY dXNlcg== +OK Login successful Testnum 883 === End of file server.cmd === Start of file valgrind883 ==110218== ==110218== Process terminating with default action of signal 4 (SIGILL) ==110218== Illegal opcode at address 0x10B06D ==110218== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110218== by 0x10B06D: 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/1/valgrind884 ../src/curl -q --output log/1/curl884.out --include --trace-ascii log/1/trace884 --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:43451/884' > log/1/stdout884 2> log/1/stderr884 884: 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 884 === Start of file server.cmd AUTH EXTERNAL REPLY AUTH + REPLY = +OK Login successful Testnum 884 === End of file server.cmd === Start of file valgrind884 ==110228== ==110228== Process terminating with default action of signal 4 (SIGILL) ==110228== Illegal opcode at address 0x10B06D ==110228== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110228== by 0x10B06D: main (tool_main.c:234) === End of file valgrind884 test 0886...[POP3 external authentication with initial response without credentials] ../libtool --mode=execute /usr/bin/valgrind --toCMD (33792): ../libtool --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/valgrind885 ../src/curl -q --output log/5/curl885.out --include --trace-ascii log/5/trace885 --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:41007/885' --sasl-ir > log/5/stdout885 2> log/5/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/4/valgrind889 ../src/curl -q --output log/4/curl889.out --include --trace-ascii log/4/trace889 --trace-time pop3://127.0.0.1:38567/889 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/4/stdout889 2> log/4/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/6/valgrind887 ../src/curl -q --output log/6/curl887.out --include --trace-ascii log/6/trace887 --trace-time pop3://127.0.0.1:33797/887 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/6/stdout887 2> log/6/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/3/valgrind888 ../src/curl -q --output log/3/curl888.out --include --trace-ascii log/3/trace888 --trace-time pop3://127.0.0.1:45905/888 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/3/stdout888 2> log/3/stderr888 CMD (33792): ../libtool --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/valgrind890 ../src/curl -q --output log/10/curl890.out --include --trace-ascii log/10/trace890 --trace-time pop3://127.0.0.1:33727/890 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/10/stdout890 2> log/10/stderr890 CMD (33792): ../libtool --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/valgrind891 ../src/curl -q --output log/8/curl891.out --include --trace-ascii log/8/trace891 --trace-time pop3://127.0.0.1:39353/891 -u user:secret > log/8/stdout891 2> log/8/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/12/valgrind894 ../src/curl -q --output log/12/curl894.out --include --trace-ascii log/12/trace894 --trace-time pop3://user%0dFRIGGING_cmd:secret@127.0.0.1:45767/894 > log/12/stdout894 2> log/12/stderr894 ol=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind886 ../src/curl -q --output log/7/curl886.out --include --trace-ascii log/7/trace886 --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:34795/886' --sasl-ir > log/7/stdout886 2> log/7/stderr886 886: 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 886 === Start of file server.cmd AUTH EXTERNAL REPLY AUTH +OK Login successful Testnum 886 === End of file server.cmd === Start of file valgrind886 ==110262== ==110262== Process terminating with default action of signal 4 (SIGILL) ==110262== Illegal opcode at address 0x10B06D ==110262== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110262== by 0x10B06D: main (tool_main.c:234) === End of file valgrind886 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/5/valgrind885 ../src/curl -q --output log/5/curl885.out --include --trace-ascii log/5/trace885 --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:41007/885' --sasl-ir > log/5/stdout885 2> log/5/stderr885 885: 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 885 === Start of file server.cmd AUTH EXTERNAL REPLY AUTH +OK Login successful Testnum 885 === End of file server.cmd === Start of file valgrind885 ==110241== ==110241== Process terminating with default action of signal 4 (SIGILL) ==110241== Illegal opcode at address 0x10B06D ==110241== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110241== by 0x10B06D: main (tool_main.c:234) === End of file valgrind885 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/4/valgrind889 ../src/curl -q --output log/4/curl889.out --include --trace-ascii log/4/trace889 --trace-time pop3://127.0.0.1:38567/889 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/4/stdout889 2> log/4/stderr889 889: 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 889 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9Mzg1NjcBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0 REPLY AQ== -ERR Authentication failed Testnum 889 === End of file server.cmd === Start of file valgrind889 ==110412== ==110412== Process terminating with default action of signal 4 (SIGILL) ==110412== Illegal opcode at address 0x10B06D ==110412== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110412== by 0x10B06D: main (tool_main.c:234) === End of file valgrind889 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/6/valgrind887 ../src/curl -q --output log/6/curl887.out --include --trace-ascii log/6/trace887 --trace-time pop3://127.0.0.1:33797/887 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/6/stdout887 2> log/6/stderr887 887: 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 887 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9MzM3OTcBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= +OK Login successful Testnum 887 === End of file server.cmd === Start of file valgrind887 ==110414== ==110414== Process terminating with default action of signal 4 (SIGILL) ==110414== Illegal opcode at address 0x10B06D ==110414== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110414== by 0x10B06D: main (tool_main.c:234) === End of file valgrind887 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/3/valgrind888 ../src/curl -q --output log/3/curl888.out --include --trace-ascii log/3/trace888 --trace-time pop3://127.0.0.1:45905/888 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/3/stdout888 2> log/3/stderr888 888: 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 888 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH +OK Login successful Testnum 888 === End of file server.cmd === Start of file valgrind888 ==110413== ==110413== Process terminating with default action of signal 4 (SIGILL) ==110413== Illegal opcode at address 0x10B06D ==110413== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110413== by 0x10B06D: main (tool_main.c:234) === End of file valgrind888 test 0890...[POP3 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/10/valgrind890 ../src/curl -q --output log/10/curl890.out --include --trace-ascii log/10/trace890 --trace-time pop3://127.0.0.1:33727/890 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/10/stdout890 2> log/10/stderr890 890: 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 890 === 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 ==110558== ==110558== Process terminating with default action of signal 4 (SIGILL) ==110558== Illegal opcode at address 0x10B06D ==110558== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110558== by 0x10B06D: main (tool_main.c:234) === End of file valgrind890 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/8/valgrind891 ../src/curl -q --output log/8/curl891.out --include --trace-ascii log/8/trace891 --trace-time pop3://127.0.0.1:39353/891 -u user:secret > log/8/stdout891 2> log/8/stderr891 891: 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 891 === Start of file server.cmd AUTH CRAM-MD5 REPLYLF AUTH + Testnum 891 === End of file server.cmd === Start of file valgrind891 ==110573== ==110573== Process terminating with default action of signal 4 (SIGILL) ==110573== Illegal opcode at address 0x10B06D ==110573== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110573== by 0x10B06D: main (tool_main.c:234) === End of file valgrind891 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/12/valgrind894 ../src/curl -q --output 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/valgrind892 ../src/curl -q --output log/9/curl892.out --include --trace-ascii log/9/trace892 --trace-time pop3://127.0.0.1:37419/892 -u user:secret --sasl-authzid shared-mailbox > log/9/stdout892 2> log/9/stderr892 CMD (33792): ../libtool --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/valgrind893 ../src/curl -q --output log/11/curl893.out --include --trace-ascii log/11/trace893 --trace-time pop3://127.0.0.1:44127/893 -u kurt:xipj3plmq --sasl-authzid ursel > log/11/stdout893 2> log/11/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/2/valgrind895 ../src/curl -q --output log/2/curl895.out --include --trace-ascii log/2/trace895 --trace-time 'imap://127.0.0.1:40175/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=*' > log/2/stdout895 2> log/2/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/1/valgrind896 ../src/curl -q --output log/1/curl896.out --include --trace-ascii log/1/trace896 --trace-time 'imap://127.0.0.1:37999/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=dummy' > log/1/stdout896 2> log/1/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/valgrind897 ../src/curl -q --output log/7/curl897.out --include --trace-ascii log/7/trace897 --trace-time 'imap://127.0.0.1:39443/897/;MAILINDEX=123/;SECTION=1' -u user:secret -D log/7/head-897 > log/7/stdout897 2> log/7/stderr897 CMD (33792): ../libtool --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/valgrind898 ../src/curl -q --output log/5/curl898.out --include --trace-ascii log/5/trace898 --trace-time -x http://127.0.0.1:33519 http://firsthost.com -L -H "Authorization: Basic am9lOnNlY3JldA==" -H "Cookie: userpwd=am9lOnNlY3JldA==" > log/5/stdout898 2> log/5/stderr898 CMD (33792): ../libtool --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/valgrind899 ../src/curl -q --output log/4/curl899.out --include --trace-ascii log/4/trace899 --trace-time http://first:secret@127.0.0.1:41947/899 -L > log/4/stdout899 2> log/4/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/10/valgrind902 ../src/curl -q --output log/10/curl902.out --include --trace-ascii log/10/trace902 --trace-time smtp://127.0.0.1:43001/902 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/10/stdout902 2> log/10/stderr902 g/12/curl894.out --include --trace-ascii log/12/trace894 --trace-time pop3://user%0dFRIGGING_cmd:secret@127.0.0.1:45767/894 > log/12/stdout894 2> log/12/stderr894 curl returned 132, when expecting 3 894: exit FAILED == Contents of files in the log/12/ dir after test 894 === Start of file server.cmd Testnum 894 === End of file server.cmd === Start of file valgrind894 ==110677== ==110677== Process terminating with default action of signal 4 (SIGILL) ==110677== Illegal opcode at address 0x10B06D ==110677== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110677== by 0x10B06D: main (tool_main.c:234) === End of file valgrind894 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/9/valgrind892 ../src/curl -q --output log/9/curl892.out --include --trace-ascii log/9/trace892 --trace-time pop3://127.0.0.1:37419/892 -u user:secret --sasl-authzid shared-mailbox > log/9/stdout892 2> log/9/stderr892 892: 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 892 === 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 ==110657== ==110657== Process terminating with default action of signal 4 (SIGILL) ==110657== Illegal opcode at address 0x10B06D ==110657== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110657== by 0x10B06D: main (tool_main.c:234) === End of file valgrind892 test 0893...[POP3 plain authentication with alternative 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/11/valgrind893 ../src/curl -q --output log/11/curl893.out --include --trace-ascii log/11/trace893 --trace-time pop3://127.0.0.1:44127/893 -u kurt:xipj3plmq --sasl-authzid ursel > log/11/stdout893 2> log/11/stderr893 893: 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 893 === 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 ==110676== ==110676== Process terminating with default action of signal 4 (SIGILL) ==110676== Illegal opcode at address 0x10B06D ==110676== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110676== by 0x10B06D: main (tool_main.c:234) === End of file valgrind893 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/2/valgrind895 ../src/curl -q --output log/2/curl895.out --include --trace-ascii log/2/trace895 --trace-time 'imap://127.0.0.1:40175/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=*' > log/2/stdout895 2> log/2/stderr895 895: 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 895 === Start of file server.cmd Testnum 895 === End of file server.cmd === Start of file valgrind895 ==110805== ==110805== Process terminating with default action of signal 4 (SIGILL) ==110805== Illegal opcode at address 0x10B06D ==110805== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110805== by 0x10B06D: main (tool_main.c:234) === End of file valgrind895 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/1/valgrind896 ../src/curl -q --output log/1/curl896.out --include --trace-ascii log/1/trace896 --trace-time 'imap://127.0.0.1:37999/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=dummy' > log/1/stdout896 2> log/1/stderr896 curl returned 132, when expecting 3 896: exit FAILED == Contents of files in the log/1/ dir after test 896 === Start of file server.cmd Testnum 896 === End of file server.cmd === Start of file valgrind896 ==110814== ==110814== Process terminating with default action of signal 4 (SIGILL) ==110814== Illegal opcode at address 0x10B06D ==110814== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110814== by 0x10B06D: main (tool_main.c:234) === End of file valgrind896 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/7/valgrind897 ../src/curl -q --output log/7/curl897.out --include --trace-ascii log/7/trace897 --trace-time 'imap://127.0.0.1:39443/897/;MAILINDEX=123/;SECTION=1' -u user:secret -D log/7/head-897 > log/7/stdout897 2> log/7/stderr897 897: 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 897 === 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 ==110885== ==110885== Process terminating with default action of signal 4 (SIGILL) ==110885== Illegal opcode at address 0x10B06D ==110885== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110885== by 0x10B06D: main (tool_main.c:234) === End of file valgrind897 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/5/valgrind898 ../src/curl -q --output log/5/curl898.out --include --trace-ascii log/5/trace898 --trace-time -x http://127.0.0.1:33519 http://firsthost.com -L -H "Authorization: Basic am9lOnNlY3JldA==" -H "Cookie: userpwd=am9lOnNlY3JldA==" > log/5/stdout898 2> log/5/stderr898 898: 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 898 === Start of file server.cmd Testnum 898 === End of file server.cmd === Start of file valgrind898 ==110915== ==110915== Process terminating with default action of signal 4 (SIGILL) ==110915== Illegal opcode at address 0x10B06D ==110915== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==110915== by 0x10B06D: main (tool_main.c:234) === End of file valgrind898 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/4/valgrind899 ../src/curl -q --output log/4/curl899.out --include --trace-ascii log/4/trace899 --trace-time http://first:secret@127.0.0.1:41947/899 -L > log/4/stdout899 2> log/4/stderr899 899: 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 899 === Start of file server.cmd Testnum 899 === End of file server.cmd === Start of file valgrind899 ==111009== ==111009== Process terminating with default action of signal 4 (SIGILL) ==111009== Illegal opcode at address 0x10B06D ==111009== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111009== by 0x10B06D: main (tool_main.c:234) === End of file valgrind899 test 0902...[RFC821-only SMTP server (EHLO not supported)] ../libtool -CMD (33792): ../libtool --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/valgrind905 ../src/curl -q --output log/9/curl905.out --include --trace-ascii log/9/trace905 --trace-time smtp://127.0.0.1:39915/905 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/9/stdout905 2> log/9/stderr905 CMD (33792): ../libtool --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/valgrind904 ../src/curl -q --output log/12/curl904.out --include --trace-ascii log/12/trace904 --trace-time smtp://127.0.0.1:39987/904 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/12/stdout904 2> log/12/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/2/valgrind908 ../src/curl -q --output log/2/curl908.out --include --trace-ascii log/2/trace908 --trace-time smtp://127.0.0.1:35685/908 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/2/stdout908 2> log/2/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/10/valgrind913 ../src/curl -q --output log/10/curl913.out --include --trace-ascii log/10/trace913 --trace-time smtp://127.0.0.1:43001/913 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/10/test913.eml > log/10/stdout913 2> log/10/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/valgrind914 ../src/curl -q --output log/9/curl914.out --include --trace-ascii log/9/trace914 --trace-time smtp://127.0.0.1:39915/914 --mail-rcpt recipient@example.com --mail-from invalid -T log/9/test914.eml > log/9/stdout914 2> log/9/stderr914 CMD (33792): ../libtool --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/valgrind915 ../src/curl -q --output log/12/curl915.out --include --trace-ascii log/12/trace915 --trace-time smtp://127.0.0.1:39987/915 --mail-rcpt recipient@example.com -T - log/12/stdout915 2> log/12/stderr915 -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/valgrind902 ../src/curl -q --output log/10/curl902.out --include --trace-ascii log/10/trace902 --trace-time smtp://127.0.0.1:43001/902 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/10/stdout902 2> log/10/stderr902 902: 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 902 === Start of file server.cmd REPLY EHLO 500 Command unrecognized Testnum 902 === End of file server.cmd === Start of file stdin-for-902 From: different To: another body === End of file stdin-for-902 === Start of file valgrind902 ==111060== ==111060== Process terminating with default action of signal 4 (SIGILL) ==111060== Illegal opcode at address 0x10B06D ==111060== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111060== by 0x10B06D: main (tool_main.c:234) === End of file valgrind902 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/9/valgrind905 ../src/curl -q --output log/9/curl905.out --include --trace-ascii log/9/trace905 --trace-time smtp://127.0.0.1:39915/905 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/9/stdout905 2> log/9/stderr905 905: 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 905 === 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 stdin-for-905 mail body === End of file stdin-for-905 === Start of file valgrind905 ==111113== ==111113== Process terminating with default action of signal 4 (SIGILL) ==111113== Illegal opcode at address 0x10B06D ==111113== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111113== by 0x10B06D: main (tool_main.c:234) === End of file valgrind905 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/12/valgrind904 ../src/curl -q --output log/12/curl904.out --include --trace-ascii log/12/trace904 --trace-time smtp://127.0.0.1:39987/904 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/12/stdout904 2> log/12/stderr904 904: 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 904 === 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 stdin-for-904 mail body === End of file stdin-for-904 === Start of file valgrind904 ==111111== ==111111== Process terminating with default action of signal 4 (SIGILL) ==111111== Illegal opcode at address 0x10B06D ==111111== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111111== by 0x10B06D: main (tool_main.c:234) === End of file valgrind904 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/2/valgrind908 ../src/curl -q --output log/2/curl908.out --include --trace-ascii log/2/trace908 --trace-time smtp://127.0.0.1:35685/908 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/2/stdout908 2> log/2/stderr908 908: 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 908 === 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 stdin-for-908 mail body === End of file stdin-for-908 === Start of file valgrind908 ==111218== ==111218== Process terminating with default action of signal 4 (SIGILL) ==111218== Illegal opcode at address 0x10B06D ==111218== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111218== by 0x10B06D: main (tool_main.c:234) === End of file valgrind908 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/10/valgrind913 ../src/curl -q --output log/10/curl913.out --include --trace-ascii log/10/trace913 --trace-time smtp://127.0.0.1:43001/913 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/10/test913.eml > log/10/stdout913 2> log/10/stderr913 913: 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 913 === Start of file server.cmd CAPA "SIZE 32" Testnum 913 === End of file server.cmd === Start of file test913.eml From: different To: another body === End of file test913.eml === Start of file valgrind913 ==111276== ==111276== Process terminating with default action of signal 4 (SIGILL) ==111276== Illegal opcode at address 0x10B06D ==111276== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111276== by 0x10B06D: main (tool_main.c:234) === End of file valgrind913 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/9/valgrind914 ../src/curl -q --output log/9/curl914.out --include --trace-ascii log/9/trace914 --trace-time smtp://127.0.0.1:39915/914 --mail-rcpt recipient@example.com --mail-from invalid -T log/9/test914.eml > log/9/stdout914 2> log/9/stderr914 914: 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 914 === Start of file server.cmd REPLY MAIL 501 not fine enough Testnum 914 === End of file server.cmd === Start of file test914.eml From: different To: another body === End of file test914.eml === Start of file valgrind914 ==111330== ==111330== Process terminating with default action of signal 4 (SIGILL) ==111330== Illegal opcode at address 0x10B06D ==111330== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111330== by 0x10B06D: main (tool_main.c:234) === End of file valgrind914 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/12/valgrind915 ../src/curl -q --output log/12/curl915.out --include --trace-ascii log/12/trace915 --trace-time smtp://127.0.0.1:39987/915 --mail-rcpt recipient@example.com -T - log/12/stdout915 2> log/12/stderr915 915: 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 915 === Start of file server.cmd Testnum 915 === End of file server.cmd === Start of file stdin-for-915 From: different To: another body === End of file stdin-for-915 === Start of file valgrind915 ==111336== ==111336== Process terminating with default action of signal 4 CMD (33792): ../libtool --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/valgrind916 ../src/curl -q --output log/2/curl916.out --include --trace-ascii log/2/trace916 --trace-time smtp://127.0.0.1:35685/916 --mail-rcpt invalid --mail-from sender@example.com -T - log/2/stdout916 2> log/2/stderr916 CMD (33792): ../libtool --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/valgrind917 ../src/curl -q --output log/10/curl917.out --include --trace-ascii log/10/trace917 --trace-time smtp://127.0.0.1:43001/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/10/stdout917 2> log/10/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/12/valgrind919 ../src/curl -q --output log/12/curl919.out --include --trace-ascii log/12/trace919 --trace-time smtp://127.0.0.1:39987/919 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/12/stdout919 2> log/12/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/9/valgrind918 ../src/curl -q --output log/9/curl918.out --include --trace-ascii log/9/trace918 --trace-time smtp://127.0.0.1:39915/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/9/stdout918 2> log/9/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/3/valgrind901 ../src/curl -q --output log/3/curl901.out --include --trace-ascii log/3/trace901 --trace-time smtp://127.0.0.1:33405/901 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/3/stdout901 2> log/3/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/6/valgrind900 ../src/curl -q --output log/6/curl900.out --include --trace-ascii log/6/trace900 --trace-time smtp://127.0.0.1:43801/900 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/6/stdout900 2> log/6/stderr900 (SIGILL) ==111336== Illegal opcode at address 0x10B06D ==111336== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111336== by 0x10B06D: main (tool_main.c:234) === End of file valgrind915 test 0916...[SMTP with 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/2/valgrind916 ../src/curl -q --output log/2/curl916.out --include --trace-ascii log/2/trace916 --trace-time smtp://127.0.0.1:35685/916 --mail-rcpt invalid --mail-from sender@example.com -T - log/2/stdout916 2> log/2/stderr916 916: 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 916 === Start of file server.cmd Testnum 916 === End of file server.cmd === Start of file stdin-for-916 From: different To: another body === End of file stdin-for-916 === Start of file valgrind916 ==111434== ==111434== Process terminating with default action of signal 4 (SIGILL) ==111434== Illegal opcode at address 0x10B06D ==111434== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111434== by 0x10B06D: main (tool_main.c:234) === End of file valgrind916 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/10/valgrind917 ../src/curl -q --output log/10/curl917.out --include --trace-ascii log/10/trace917 --trace-time smtp://127.0.0.1:43001/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/10/stdout917 2> log/10/stderr917 917: 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 917 === Start of file server.cmd Testnum 917 === End of file server.cmd === Start of file stdin-for-917 From: different To: another body === End of file stdin-for-917 === Start of file valgrind917 ==111484== ==111484== Process terminating with default action of signal 4 (SIGILL) ==111484== Illegal opcode at address 0x10B06D ==111484== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111484== by 0x10B06D: main (tool_main.c:234) === End of file valgrind917 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/12/valgrind919 ../src/curl -q --output log/12/curl919.out --include --trace-ascii log/12/trace919 --trace-time smtp://127.0.0.1:39987/919 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/12/stdout919 2> log/12/stderr919 919: 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 919 === Start of file server.cmd AUTH PLAIN REPLY AUTH 235 Authenticated Testnum 919 === End of file server.cmd === Start of file stdin-for-919 mail body === End of file stdin-for-919 === Start of file valgrind919 ==111538== ==111538== Process terminating with default action of signal 4 (SIGILL) ==111538== Illegal opcode at address 0x10B06D ==111538== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111538== by 0x10B06D: main (tool_main.c:234) === End of file valgrind919 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/9/valgrind918 ../src/curl -q --output log/9/curl918.out --include --trace-ascii log/9/trace918 --trace-time smtp://127.0.0.1:39915/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/9/stdout918 2> log/9/stderr918 918: 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 918 === Start of file server.cmd Testnum 918 === End of file server.cmd === Start of file stdin-for-918 From: different To: another body === End of file stdin-for-918 === Start of file valgrind918 ==111508== ==111508== Process terminating with default action of signal 4 (SIGILL) ==111508== Illegal opcode at address 0x10B06D ==111508== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111508== by 0x10B06D: main (tool_main.c:234) === End of file valgrind918 startnew: perl -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 33405 (log/3/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:33405/verifiedserver" 2>log/3/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111010 port 33405 * pid smtp => 111010 111010 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/3/valgrind901 ../src/curl -q --output log/3/curl901.out --include --trace-ascii log/3/trace901 --trace-time smtp://127.0.0.1:33405/901 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/3/stdout901 2> log/3/stderr901 901: 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 901 === Start of file server.cmd Testnum 901 === End of file server.cmd === Start of file smtp_server.log 11:16:49.638816 SMTP server listens on port IPv4/33405 11:16:49.638895 logged pid 111010 in log/3/server/smtp_server.pid 11:16:49.638920 Awaiting input 11:16:50.618752 ====> Client connect 11:16:50.618853 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.619030 < "EHLO verifiedserver" 11:16:50.619058 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.619160 < "HELP" 11:16:50.619178 > "214 WE ROOLZ: 111010[CR][LF]" 11:16:50.619188 return proof we are we 11:16:50.619305 < "QUIT" 11:16:50.619320 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.619808 MAIN sockfilt said DISC 11:16:50.619827 ====> Client disconnected 11:16:50.619854 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.155807 Running IPv4 version 11:16:49.155876 Listening on port 33405 11:16:49.155903 Wrote pid 111050 to log/3/server/smtp_sockfilt.pid 11:16:49.155926 Wrote port 33405 to log/3/server/smtp_server.port 11:16:49.156060 Received PING (on stdin) 11:16:50.136003 ====> Client connect 11:16:50.136179 Received DATA (on stdin) 11:16:50.136188 > 160 bytes data, server => client 11:16:50.136195 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.136201 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.136206 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.136253 < 21 bytes data, client => server 11:16:50.136259 'EHLO verifiedserver\r\n' 11:16:50.136380 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/8/valgrind903 ../src/curl -q --output log/8/curl903.out --include --trace-ascii log/8/trace903 --trace-time smtp://127.0.0.1:37675/903 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/8/stdout903 2> log/8/stderr903 (on stdin) 11:16:50.136390 > 53 bytes data, server => client 11:16:50.136397 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.136433 < 6 bytes data, client => server 11:16:50.136439 'HELP\r\n' 11:16:50.136508 Received DATA (on stdin) 11:16:50.136514 > 22 bytes data, server => client 11:16:50.136519 '214 WE ROOLZ: 111010\r\n' 11:16:50.136577 < 6 bytes data, client => server 11:16:50.136584 'QUIT\r\n' 11:16:50.136640 Received DATA (on stdin) 11:16:50.136646 > 35 bytes data, server => client 11:16:50.136652 '221 curl ESMTP server signing off\r\n' 11:16:50.137096 ====> Client disconnect 11:16:50.137173 Received ACKD (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 ==111685== ==111685== Process terminating with default action of signal 4 (SIGILL) ==111685== Illegal opcode at address 0x10B06D ==111685== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111685== by 0x10B06D: main (tool_main.c:234) === End of file valgrind901 startnew: perl -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 43801 (log/6/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:43801/verifiedserver" 2>log/6/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111007 port 43801 * pid smtp => 111007 111007 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/6/valgrind900 ../src/curl -q --output log/6/curl900.out --include --trace-ascii log/6/trace900 --trace-time smtp://127.0.0.1:43801/900 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/6/stdout900 2> log/6/stderr900 900: 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 900 === Start of file server.cmd Testnum 900 === End of file server.cmd === Start of file smtp_server.log 11:16:49.629753 SMTP server listens on port IPv4/43801 11:16:49.629828 logged pid 111007 in log/6/server/smtp_server.pid 11:16:49.629850 Awaiting input 11:16:50.613732 ====> Client connect 11:16:50.613834 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.614015 < "EHLO verifiedserver" 11:16:50.614042 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.614141 < "HELP" 11:16:50.614159 > "214 WE ROOLZ: 111007[CR][LF]" 11:16:50.614169 return proof we are we 11:16:50.614302 < "QUIT" 11:16:50.614318 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.614811 MAIN sockfilt said DISC 11:16:50.614832 ====> Client disconnected 11:16:50.614867 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.146762 Running IPv4 version 11:16:49.146839 Listening on port 43801 11:16:49.146867 Wrote pid 111042 to log/6/server/smtp_sockfilt.pid 11:16:49.146890 Wrote port 43801 to log/6/server/smtp_server.port 11:16:49.147006 Received PING (on stdin) 11:16:50.130998 ====> Client connect 11:16:50.131159 Received DATA (on stdin) 11:16:50.131167 > 160 bytes data, server => client 11:16:50.131174 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.131180 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.131185 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.131236 < 21 bytes data, client => server 11:16:50.131243 'EHLO verifiedserver\r\n' 11:16:50.131365 Received DATA (on stdin) 11:16:50.131371 > 53 bytes data, server => client 11:16:50.131378 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.131413 < 6 bytes data, client => server 11:16:50.131419 'HELP\r\n' 11:16:50.131488 Received DATA (on stdin) 11:16:50.131494 > 22 bytes data, server => client 11:16:50.131500 '214 WE ROOLZ: 111007\r\n' 11:16:50.131573 < 6 bytes data, client => server 11:16:50.131580 'QUIT\r\n' 11:16:50.131638 Received DATA (on stdin) 11:16:50.131644 > 35 bytes data, server => client 11:16:50.131649 '221 curl ESMTP server signing off\r\n' 11:16:50.132095 ====> Client disconnect 11:16:50.132189 Received ACKD (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 ==111670== ==111670== Process terminating with default action of signal 4 (SIGILL) ==111670== Illegal opcode at address 0x10B06D ==111670== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111670== by 0x10B06D: main (tool_main.c:234) === End of file valgrind900 startnew: perl -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 37675 (log/8/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:37675/verifiedserver" 2>log/8/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111063 port 37675 * pid smtp => 111063 111063 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/8/valgrind903 ../src/curl -q --output log/8/curl903.out --include --trace-ascii log/8/trace903 --trace-time smtp://127.0.0.1:37675/903 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/8/stdout903 2> log/8/stderr903 903: 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 903 === 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 11:16:49.715118 SMTP server listens on port IPv4/37675 11:16:49.715186 logged pid 111063 in log/8/server/smtp_server.pid 11:16:49.715205 Awaiting input 11:16:50.699023 ====> Client connect 11:16:50.699266 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.699466 < "EHLO verifiedserver" 11:16:50.699495 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.699597 < "HELP" 11:16:50.699616 > "214 WE ROOLZ: 111063[CR][LF]" 11:16:50.699626 return proof we are we 11:16:50.699766 < "QUIT" 11:16:50.699782 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.700257 MAIN sockfilt said DISC 11:16:50.700280 ====> Client disconnected 11:16:50.700321 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.232233 Running IPv4 version 11:16:49.232301 Listening on port 37675 11:16:49.232331 Wrote pid 111108 to log/8/server/smtp_sockfilt.pid 11:16:49.232353 Wrote port 37675 to log/8/server/smtp_server.port 11:16:49.232368 Received PING (on stdin) 11:16:50.216278 ====> Client connect 11:16:50.216596 Received DATA (on stdin) 11:16:50.216604 > 160 bytes data, server => client 11:16:50.216611 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.216618 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.216623 '_CMD (33792): ../libtool --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/valgrind906 ../src/curl -q --output log/11/curl906.out --include --trace-ascii log/11/trace906 --trace-time smtp://127.0.0.1:45107/906 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - log/11/stdout906 2> log/11/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/2/valgrind920 ../src/curl -q --output log/2/curl920.out --include --trace-ascii log/2/trace920 --trace-time smtp://127.0.0.1:35685/920 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/2/stdout920 2> log/2/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/1/valgrind909 ../src/curl -q --output log/1/curl909.out --include --trace-ascii log/1/trace909 --trace-time smtp://127.0.0.1:34653/909 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/1/test909.eml > log/1/stdout909 2> log/1/stderr909 {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.216679 < 21 bytes data, client => server 11:16:50.216685 'EHLO verifiedserver\r\n' 11:16:50.216818 Received DATA (on stdin) 11:16:50.216825 > 53 bytes data, server => client 11:16:50.216832 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.216868 < 6 bytes data, client => server 11:16:50.216873 'HELP\r\n' 11:16:50.216946 Received DATA (on stdin) 11:16:50.216952 > 22 bytes data, server => client 11:16:50.216957 '214 WE ROOLZ: 111063\r\n' 11:16:50.217036 < 6 bytes data, client => server 11:16:50.217043 'QUIT\r\n' 11:16:50.217102 Received DATA (on stdin) 11:16:50.217108 > 35 bytes data, server => client 11:16:50.217114 '221 curl ESMTP server signing off\r\n' 11:16:50.217541 ====> Client disconnect 11:16:50.217645 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 ==111786== ==111786== Process terminating with default action of signal 4 (SIGILL) ==111786== Illegal opcode at address 0x10B06D ==111786== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111786== by 0x10B06D: main (tool_main.c:234) === End of file valgrind903 startnew: perl -I/startdir/src/curl/tests /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 45107 (log/11/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:45107/verifiedserver" 2>log/11/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111193 port 45107 * pid smtp => 111193 111193 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/11/valgrind906 ../src/curl -q --output log/11/curl906.out --include --trace-ascii log/11/trace906 --trace-time smtp://127.0.0.1:45107/906 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - log/11/stdout906 2> log/11/stderr906 906: 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 906 === 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 11:16:49.804203 SMTP server listens on port IPv4/45107 11:16:49.804280 logged pid 111193 in log/11/server/smtp_server.pid 11:16:49.804301 Awaiting input 11:16:50.791189 ====> Client connect 11:16:50.791303 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.791484 < "EHLO verifiedserver" 11:16:50.791512 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.791610 < "HELP" 11:16:50.791629 > "214 WE ROOLZ: 111193[CR][LF]" 11:16:50.791639 return proof we are we 11:16:50.791774 < "QUIT" 11:16:50.791789 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.792316 MAIN sockfilt said DISC 11:16:50.792336 ====> Client disconnected 11:16:50.792364 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.321311 Running IPv4 version 11:16:49.321382 Listening on port 45107 11:16:49.321414 Wrote pid 111211 to log/11/server/smtp_sockfilt.pid 11:16:49.321437 Wrote port 45107 to log/11/server/smtp_server.port 11:16:49.321451 Received PING (on stdin) 11:16:50.308450 ====> Client connect 11:16:50.308628 Received DATA (on stdin) 11:16:50.308636 > 160 bytes data, server => client 11:16:50.308642 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.308648 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.308654 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.308703 < 21 bytes data, client => server 11:16:50.308710 'EHLO verifiedserver\r\n' 11:16:50.308834 Received DATA (on stdin) 11:16:50.308841 > 53 bytes data, server => client 11:16:50.308847 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.308883 < 6 bytes data, client => server 11:16:50.308888 'HELP\r\n' 11:16:50.308958 Received DATA (on stdin) 11:16:50.308964 > 22 bytes data, server => client 11:16:50.308969 '214 WE ROOLZ: 111193\r\n' 11:16:50.309044 < 6 bytes data, client => server 11:16:50.309052 'QUIT\r\n' 11:16:50.309110 Received DATA (on stdin) 11:16:50.309116 > 35 bytes data, server => client 11:16:50.309122 '221 curl ESMTP server signing off\r\n' 11:16:50.309601 ====> Client disconnect 11:16:50.309685 Received ACKD (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 ==111853== ==111853== Process terminating with default action of signal 4 (SIGILL) ==111853== Illegal opcode at address 0x10B06D ==111853== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111853== by 0x10B06D: main (tool_main.c:234) === End of file valgrind906 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/2/valgrind920 ../src/curl -q --output log/2/curl920.out --include --trace-ascii log/2/trace920 --trace-time smtp://127.0.0.1:35685/920 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/2/stdout920 2> log/2/stderr920 920: 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 920 === 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 stdin-for-920 mail body === End of file stdin-for-920 === Start of file valgrind920 ==111904== ==111904== Process terminating with default action of signal 4 (SIGILL) ==111904== Illegal opcode at address 0x10B06D ==111904== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111904== by 0x10B06D: main (tool_main.c:234) === End of file valgrind920 startnew: perl -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 34653 (log/1/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:34653/verifiedserver" 2>log/1/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111216 port 34653 * pid smtp => 111216 111216 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/1/valgrind909 ../src/curl -q --output log/1/curl909.out --include --trace-ascii log/1/trace909 --trace-time smtp://127.0.0.1:34653/909 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/1/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/7/valgrind910 ../src/curl -q --output log/7/curl910.out --include --trace-ascii log/7/trace910 --trace-time smtp://127.0.0.1:36363/910 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/7/stdout910 2> log/7/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/5/valgrind911 ../src/curl -q --output log/5/curl911.out --include --trace-ascii log/5/trace911 --trace-time smtp://127.0.0.1:35871/911 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/5/stdout911 2> log/5/stderr911 st909.eml > log/1/stdout909 2> log/1/stderr909 909: 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 909 === Start of file server.cmd Testnum 909 === End of file server.cmd === Start of file smtp_server.log 11:16:49.962699 SMTP server listens on port IPv4/34653 11:16:49.962783 logged pid 111216 in log/1/server/smtp_server.pid 11:16:49.962807 Awaiting input 11:16:50.944751 ====> Client connect 11:16:50.944884 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.945122 < "EHLO verifiedserver" 11:16:50.945157 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.945282 < "HELP" 11:16:50.945307 > "214 WE ROOLZ: 111216[CR][LF]" 11:16:50.945319 return proof we are we 11:16:50.945490 < "QUIT" 11:16:50.945512 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.946014 MAIN sockfilt said DISC 11:16:50.946037 ====> Client disconnected 11:16:50.946074 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.477996 Running IPv4 version 11:16:49.478082 Listening on port 34653 11:16:49.478111 Wrote pid 111262 to log/1/server/smtp_sockfilt.pid 11:16:49.478135 Wrote port 34653 to log/1/server/smtp_server.port 11:16:49.479941 Received PING (on stdin) 11:16:50.461998 ====> Client connect 11:16:50.462215 Received DATA (on stdin) 11:16:50.462225 > 160 bytes data, server => client 11:16:50.462235 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.462244 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.462252 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.462318 < 21 bytes data, client => server 11:16:50.462327 'EHLO verifiedserver\r\n' 11:16:50.462483 Received DATA (on stdin) 11:16:50.462492 > 53 bytes data, server => client 11:16:50.462500 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.462544 < 6 bytes data, client => server 11:16:50.462552 'HELP\r\n' 11:16:50.462641 Received DATA (on stdin) 11:16:50.462649 > 22 bytes data, server => client 11:16:50.462657 '214 WE ROOLZ: 111216\r\n' 11:16:50.462746 < 6 bytes data, client => server 11:16:50.462758 'QUIT\r\n' 11:16:50.462835 Received DATA (on stdin) 11:16:50.462843 > 35 bytes data, server => client 11:16:50.462850 '221 curl ESMTP server signing off\r\n' 11:16:50.463299 ====> Client disconnect 11:16:50.463396 Received ACKD (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 ==111985== ==111985== Process terminating with default action of signal 4 (SIGILL) ==111985== Illegal opcode at address 0x10B06D ==111985== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==111985== by 0x10B06D: main (tool_main.c:234) === End of file valgrind909 startnew: perl -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 36363 (log/7/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:36363/verifiedserver" 2>log/7/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111229 port 36363 * pid smtp => 111229 111229 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/7/valgrind910 ../src/curl -q --output log/7/curl910.out --include --trace-ascii log/7/trace910 --trace-time smtp://127.0.0.1:36363/910 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/7/stdout910 2> log/7/stderr910 910: 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 910 === Start of file server.cmd Testnum 910 === End of file server.cmd === Start of file smtp_server.log 11:16:49.968373 SMTP server listens on port IPv4/36363 11:16:49.968459 logged pid 111229 in log/7/server/smtp_server.pid 11:16:49.968482 Awaiting input 11:16:50.955806 ====> Client connect 11:16:50.955939 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.956187 < "EHLO verifiedserver" 11:16:50.956228 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.956362 < "HELP" 11:16:50.956385 > "214 WE ROOLZ: 111229[CR][LF]" 11:16:50.956399 return proof we are we 11:16:50.956584 < "QUIT" 11:16:50.956608 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.957301 MAIN sockfilt said DISC 11:16:50.957324 ====> Client disconnected 11:16:50.957361 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.485509 Running IPv4 version 11:16:49.485561 Listening on port 36363 11:16:49.485583 Wrote pid 111269 to log/7/server/smtp_sockfilt.pid 11:16:49.485600 Wrote port 36363 to log/7/server/smtp_server.port 11:16:49.485611 Received PING (on stdin) 11:16:50.473057 ====> Client connect 11:16:50.473271 Received DATA (on stdin) 11:16:50.473282 > 160 bytes data, server => client 11:16:50.473291 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.473300 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.473308 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.473378 < 21 bytes data, client => server 11:16:50.473387 'EHLO verifiedserver\r\n' 11:16:50.473556 Received DATA (on stdin) 11:16:50.473565 > 53 bytes data, server => client 11:16:50.473574 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.473621 < 6 bytes data, client => server 11:16:50.473628 'HELP\r\n' 11:16:50.473722 Received DATA (on stdin) 11:16:50.473730 > 22 bytes data, server => client 11:16:50.473738 '214 WE ROOLZ: 111229\r\n' 11:16:50.473834 < 6 bytes data, client => server 11:16:50.473847 'QUIT\r\n' 11:16:50.473933 Received DATA (on stdin) 11:16:50.473942 > 35 bytes data, server => client 11:16:50.473950 '221 curl ESMTP server signing off\r\n' 11:16:50.474583 ====> Client disconnect 11:16:50.474685 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 === Start of file valgrind910 ==112000== ==112000== Process terminating with default action of signal 4 (SIGILL) ==112000== Illegal opcode at address 0x10B06D ==112000== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112000== by 0x10B06D: main (tool_main.c:234) === End of file valgrind910 startnew: perl -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 35871 (log/5/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:35871/verifiedserver" 2>log/5/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111270 port 35871 * pid smtp => 111270 111270 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/5/valgrind911 ../src/curl -q --output log/5/curl911.out --include --trace-ascii log/5/trace911 --trace-time smtp://127.0.0.1:35871/911 CMD (33792): ../libtool --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/valgrind921 ../src/curl -q --output log/10/curl921.out --include --trace-ascii log/10/trace921 --trace-time smtp://127.0.0.1:43001/921 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T - log/10/stdout921 2> log/10/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/9/valgrind923 ../src/curl -q --output log/9/curl923.out --include --trace-ascii log/9/trace923 --trace-time smtp://127.0.0.1:39915/923 --mail-rcpt recipient > log/9/stdout923 2> log/9/stderr923 CMD (33792): ../libtool --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/valgrind922 ../src/curl -q --output log/12/curl922.out --include --trace-ascii log/12/trace922 --trace-time smtp://127.0.0.1:39987/922 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/12/stdout922 2> log/12/stderr922 CMD (33792): ../libtool --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-time smtp://127.0.0.1:33405/924 --mail-rcpt smith > log/3/stdout924 2> log/3/stderr924 CMD (33792): ../libtool --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/valgrind925 ../src/curl -q --output log/6/curl925.out --include --trace-ascii log/6/trace925 --trace-time smtp://127.0.0.1:43801/925 --mail-rcpt user@example.net > log/6/stdout925 2> log/6/stderr925 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/5/stdout911 2> log/5/stderr911 911: 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 911 === Start of file server.cmd Testnum 911 === End of file server.cmd === Start of file smtp_server.log 11:16:49.997493 SMTP server listens on port IPv4/35871 11:16:49.997566 logged pid 111270 in log/5/server/smtp_server.pid 11:16:49.997590 Awaiting input 11:16:50.996879 ====> Client connect 11:16:50.997016 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:50.997280 < "EHLO verifiedserver" 11:16:50.997322 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:50.997467 < "HELP" 11:16:50.997496 > "214 WE ROOLZ: 111270[CR][LF]" 11:16:50.997510 return proof we are we 11:16:50.997688 < "QUIT" 11:16:50.997711 > "221 curl ESMTP server signing off[CR][LF]" 11:16:50.998494 MAIN sockfilt said DISC 11:16:50.998519 ====> Client disconnected 11:16:50.998553 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:49.514609 Running IPv4 version 11:16:49.514685 Listening on port 35871 11:16:49.514714 Wrote pid 111272 to log/5/server/smtp_sockfilt.pid 11:16:49.514735 Wrote port 35871 to log/5/server/smtp_server.port 11:16:49.514748 Received PING (on stdin) 11:16:50.514130 ====> Client connect 11:16:50.514349 Received DATA (on stdin) 11:16:50.514361 > 160 bytes data, server => client 11:16:50.514371 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:50.514380 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:50.514388 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:50.514464 < 21 bytes data, client => server 11:16:50.514475 'EHLO verifiedserver\r\n' 11:16:50.514650 Received DATA (on stdin) 11:16:50.514661 > 53 bytes data, server => client 11:16:50.514670 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:50.514721 < 6 bytes data, client => server 11:16:50.514730 'HELP\r\n' 11:16:50.514835 Received DATA (on stdin) 11:16:50.514845 > 22 bytes data, server => client 11:16:50.514853 '214 WE ROOLZ: 111270\r\n' 11:16:50.514940 < 6 bytes data, client => server 11:16:50.514952 'QUIT\r\n' 11:16:50.515037 Received DATA (on stdin) 11:16:50.515046 > 35 bytes data, server => client 11:16:50.515054 '221 curl ESMTP server signing off\r\n' 11:16:50.515774 ====> Client disconnect 11:16:50.515882 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind911 ==112107== ==112107== Process terminating with default action of signal 4 (SIGILL) ==112107== Illegal opcode at address 0x10B06D ==112107== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112107== by 0x10B06D: main (tool_main.c:234) === End of file valgrind911 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/10/valgrind921 ../src/curl -q --output log/10/curl921.out --include --trace-ascii log/10/trace921 --trace-time smtp://127.0.0.1:43001/921 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T - log/10/stdout921 2> log/10/stderr921 921: 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 921 === 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 stdin-for-921 mail body === End of file stdin-for-921 === Start of file valgrind921 ==112099== ==112099== Process terminating with default action of signal 4 (SIGILL) ==112099== Illegal opcode at address 0x10B06D ==112099== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112099== by 0x10B06D: main (tool_main.c:234) === End of file valgrind921 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/9/valgrind923 ../src/curl -q --output log/9/curl923.out --include --trace-ascii log/9/trace923 --trace-time smtp://127.0.0.1:39915/923 --mail-rcpt recipient > log/9/stdout923 2> log/9/stderr923 923: 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 923 === Start of file server.cmd Testnum 923 === End of file server.cmd === Start of file valgrind923 ==112141== ==112141== Process terminating with default action of signal 4 (SIGILL) ==112141== Illegal opcode at address 0x10B06D ==112141== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112141== by 0x10B06D: main (tool_main.c:234) === End of file valgrind923 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/12/valgrind922 ../src/curl -q --output log/12/curl922.out --include --trace-ascii log/12/trace922 --trace-time smtp://127.0.0.1:39987/922 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/12/stdout922 2> log/12/stderr922 922: 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 922 === Start of file server.cmd AUTH XOAUTH2 REPLY AUTH 235 Authenticated Testnum 922 === End of file server.cmd === Start of file stdin-for-922 mail body === End of file stdin-for-922 === Start of file valgrind922 ==112142== ==112142== Process terminating with default action of signal 4 (SIGILL) ==112142== Illegal opcode at address 0x10B06D ==112142== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112142== by 0x10B06D: main (tool_main.c:234) === End of file valgrind922 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost 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-time smtp://127.0.0.1:33405/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 server.cmd Testnum 924 === End of file server.cmd === Start of file valgrind924 ==112303== ==112303== Process terminating with default action of signal 4 (SIGILL) ==112303== Illegal opcode at address 0x10B06D ==112303== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112303== by 0x10B06D: main (tool_main.c:234) === 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/4/valgrind912 ../src/curl -q --output log/4/curl912.out --include --trace-ascii log/4/trace912 --trace-time smtp://127.0.0.1:35465/912 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/4/test912.eml > log/4/stdout912 2> log/4/stderr912 CMD (33792): ../libtool --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/valgrind926 ../src/curl -q --output log/8/curl926.out --include --trace-ascii log/8/trace926 --trace-time smtp://127.0.0.1:37675/926 --mail-rcpt recipient > log/8/stdout926 2> log/8/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/11/valgrind927 ../src/curl -q --output log/11/curl927.out --include --trace-ascii log/11/trace927 --trace-time smtp://127.0.0.1:45107/927 --mail-rcpt Friends -X EXPN > log/11/stdout927 2> log/11/stderr927 CMD (33792): ../libtool --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/valgrind928 ../src/curl -q --output log/2/curl928.out --include --trace-ascii log/2/trace928 --trace-time smtp://127.0.0.1:35685/928 > log/2/stdout928 2> log/2/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/1/valgrind929 ../src/curl -q --output log/1/curl929.out --include --trace-ascii log/1/trace929 --trace-time smtp://127.0.0.1:34653/929 -X NOOP -I > log/1/stdout929 2> log/1/stderr929 of file valgrind924 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/6/valgrind925 ../src/curl -q --output log/6/curl925.out --include --trace-ascii log/6/trace925 --trace-time smtp://127.0.0.1:43801/925 --mail-rcpt user@example.net > log/6/stdout925 2> log/6/stderr925 925: 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 925 === Start of file server.cmd Testnum 925 === End of file server.cmd === Start of file valgrind925 ==112302== ==112302== Process terminating with default action of signal 4 (SIGILL) ==112302== Illegal opcode at address 0x10B06D ==112302== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112302== by 0x10B06D: main (tool_main.c:234) === End of file valgrind925 startnew: perl -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 35465 (log/4/server/smtp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "smtp://127.0.0.1:35465/verifiedserver" 2>log/4/smtp_verify.log RUN: Verifying our test smtp server took 0 seconds RUN: SMTP server is PID 111274 port 35465 * pid smtp => 111274 111274 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/4/valgrind912 ../src/curl -q --output log/4/curl912.out --include --trace-ascii log/4/trace912 --trace-time smtp://127.0.0.1:35465/912 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/4/test912.eml > log/4/stdout912 2> log/4/stderr912 912: 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 912 === Start of file server.cmd CAPA SIZE Testnum 912 === End of file server.cmd === Start of file smtp_server.log 11:16:50.146501 SMTP server listens on port IPv4/35465 11:16:50.146558 logged pid 111274 in log/4/server/smtp_server.pid 11:16:50.146576 Awaiting input 11:16:51.145736 ====> Client connect 11:16:51.145952 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:51.146269 < "EHLO verifiedserver" 11:16:51.146354 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 11:16:51.146503 < "HELP" 11:16:51.146532 > "214 WE ROOLZ: 111274[CR][LF]" 11:16:51.146546 return proof we are we 11:16:51.146735 < "QUIT" 11:16:51.146758 > "221 curl ESMTP server signing off[CR][LF]" 11:16:51.146941 MAIN sockfilt said DISC 11:16:51.146988 ====> Client disconnected 11:16:51.147042 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 11:16:50.663644 Running IPv4 version 11:16:50.663705 Listening on port 35465 11:16:50.663731 Wrote pid 111306 to log/4/server/smtp_sockfilt.pid 11:16:50.663748 Wrote port 35465 to log/4/server/smtp_server.port 11:16:50.663759 Received PING (on stdin) 11:16:51.662866 ====> Client connect 11:16:51.663291 Received DATA (on stdin) 11:16:51.663307 > 160 bytes data, server => client 11:16:51.663317 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:51.663326 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:51.663334 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:51.663405 < 21 bytes data, client => server 11:16:51.663417 'EHLO verifiedserver\r\n' 11:16:51.663684 Received DATA (on stdin) 11:16:51.663695 > 53 bytes data, server => client 11:16:51.663705 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 11:16:51.663755 < 6 bytes data, client => server 11:16:51.663765 'HELP\r\n' 11:16:51.663871 Received DATA (on stdin) 11:16:51.663880 > 22 bytes data, server => client 11:16:51.663889 '214 WE ROOLZ: 111274\r\n' 11:16:51.663987 < 6 bytes data, client => server 11:16:51.663999 'QUIT\r\n' 11:16:51.664083 Received DATA (on stdin) 11:16:51.664093 > 35 bytes data, server => client 11:16:51.664101 '221 curl ESMTP server signing off\r\n' 11:16:51.664219 ====> Client disconnect 11:16:51.664369 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 ==112409== ==112409== Process terminating with default action of signal 4 (SIGILL) ==112409== Illegal opcode at address 0x10B06D ==112409== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112409== by 0x10B06D: main (tool_main.c:234) === End of file valgrind912 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/8/valgrind926 ../src/curl -q --output log/8/curl926.out --include --trace-ascii log/8/trace926 --trace-time smtp://127.0.0.1:37675/926 --mail-rcpt recipient > log/8/stdout926 2> log/8/stderr926 926: 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 926 === Start of file server.cmd REPLY VRFY 550 Unknown user Testnum 926 === End of file server.cmd === Start of file valgrind926 ==112470== ==112470== Process terminating with default action of signal 4 (SIGILL) ==112470== Illegal opcode at address 0x10B06D ==112470== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112470== by 0x10B06D: 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/11/valgrind927 ../src/curl -q --output log/11/curl927.out --include --trace-ascii log/11/trace927 --trace-time smtp://127.0.0.1:45107/927 --mail-rcpt Friends -X EXPN > log/11/stdout927 2> log/11/stderr927 927: 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 927 === Start of file server.cmd Testnum 927 === End of file server.cmd === Start of file valgrind927 ==112520== ==112520== Process terminating with default action of signal 4 (SIGILL) ==112520== Illegal opcode at address 0x10B06D ==112520== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112520== by 0x10B06D: 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/2/valgrind928 ../src/curl -q --output log/2/curl928.out --include --trace-ascii log/2/trace928 --trace-time smtp://127.0.0.1:35685/928 > log/2/stdout928 2> log/2/stderr928 928: 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 928 === Start of file server.cmd Testnum 928 === End of file server.cmd === Start of file valgrind928 ==112572== ==112572== Process terminating with default action of signal 4 (SIGILL) ==112572== Illegal opcode at address 0x10B06D ==112572== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112572== by 0x10B06D: main (tool_main.c:234) === End of file valgrind928 test 0929...[SMTP NOOP (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leCMD (33792): ../libtool --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/valgrind930 ../src/curl -q --output log/7/curl930.out --include --trace-ascii log/7/trace930 --trace-time smtp://127.0.0.1:36363/930 -X RSET -I > log/7/stdout930 2> log/7/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/5/valgrind931 ../src/curl -q --output log/5/curl931.out --include --trace-ascii log/5/trace931 --trace-time smtp://127.0.0.1:35871/%0d%0a/931 > log/5/stdout931 2> log/5/stderr931 CMD (33792): ../libtool --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/valgrind935 ../src/curl -q --output log/12/curl935.out --include --trace-ascii log/12/trace935 --trace-time smtp://127.0.0.1:39987/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/12/stdout935 2> log/12/stderr935 CMD (33792): ../libtool --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/valgrind932 ../src/curl -q --output log/10/curl932.out --include --trace-ascii log/10/trace932 --trace-time smtp://127.0.0.1:43001/932 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - > log/10/stdout932 2> log/10/stderr932 CMD (33792): ../libtool --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/valgrind939 ../src/curl -q --output log/9/curl939.out --include --trace-ascii log/9/trace939 --trace-time smtp://127.0.0.1:39915/939 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/9/stdout939 2> log/9/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/3/valgrind940 ../src/curl -q --output log/3/curl940.out --include --trace-ascii log/3/trace940 --trace-time smtp://127.0.0.1:33405/940 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/3/stdout940 2> log/3/stderr940 CMD (33792): ../libtool --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/valgrind942 ../src/curl -q --output log/4/curl942.out --include --trace-ascii log/4/trace942 --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:35465/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/4/stdout942 2> log/4/stderr942 ak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind929 ../src/curl -q --output log/1/curl929.out --include --trace-ascii log/1/trace929 --trace-time smtp://127.0.0.1:34653/929 -X NOOP -I > log/1/stdout929 2> log/1/stderr929 929: 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 929 === Start of file server.cmd Testnum 929 === End of file server.cmd === Start of file valgrind929 ==112620== ==112620== Process terminating with default action of signal 4 (SIGILL) ==112620== Illegal opcode at address 0x10B06D ==112620== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112620== by 0x10B06D: main (tool_main.c:234) === End of file valgrind929 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/7/valgrind930 ../src/curl -q --output log/7/curl930.out --include --trace-ascii log/7/trace930 --trace-time smtp://127.0.0.1:36363/930 -X RSET -I > log/7/stdout930 2> log/7/stderr930 930: 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 930 === Start of file server.cmd Testnum 930 === End of file server.cmd === Start of file valgrind930 ==112634== ==112634== Process terminating with default action of signal 4 (SIGILL) ==112634== Illegal opcode at address 0x10B06D ==112634== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112634== by 0x10B06D: 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/5/valgrind931 ../src/curl -q --output log/5/curl931.out --include --trace-ascii log/5/trace931 --trace-time smtp://127.0.0.1:35871/%0d%0a/931 > log/5/stdout931 2> log/5/stderr931 curl returned 132, when expecting 3 931: exit FAILED == Contents of files in the log/5/ dir after test 931 === Start of file server.cmd Testnum 931 === End of file server.cmd === Start of file valgrind931 ==112652== ==112652== Process terminating with default action of signal 4 (SIGILL) ==112652== Illegal opcode at address 0x10B06D ==112652== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112652== by 0x10B06D: main (tool_main.c:234) === End of file valgrind931 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/12/valgrind935 ../src/curl -q --output log/12/curl935.out --include --trace-ascii log/12/trace935 --trace-time smtp://127.0.0.1:39987/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/12/stdout935 2> log/12/stderr935 935: 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 935 === 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 stdin-for-935 mail body === End of file stdin-for-935 === Start of file valgrind935 ==112742== ==112742== Process terminating with default action of signal 4 (SIGILL) ==112742== Illegal opcode at address 0x10B06D ==112742== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112742== by 0x10B06D: main (tool_main.c:234) === End of file valgrind935 test 0932...[SMTP 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/10/valgrind932 ../src/curl -q --output log/10/curl932.out --include --trace-ascii log/10/trace932 --trace-time smtp://127.0.0.1:43001/932 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - > log/10/stdout932 2> log/10/stderr932 932: 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 932 === 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 valgrind932 ==112746== ==112746== Process terminating with default action of signal 4 (SIGILL) ==112746== Illegal opcode at address 0x10B06D ==112746== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112746== by 0x10B06D: main (tool_main.c:234) === End of file valgrind932 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/9/valgrind939 ../src/curl -q --output log/9/curl939.out --include --trace-ascii log/9/trace939 --trace-time smtp://127.0.0.1:39915/939 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/9/stdout939 2> log/9/stderr939 939: 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 939 === Start of file server.cmd REPLY EHLO 500 Command unrecognized Testnum 939 === End of file server.cmd === Start of file stdin-for-939 mail body === End of file stdin-for-939 === Start of file valgrind939 ==112820== ==112820== Process terminating with default action of signal 4 (SIGILL) ==112820== Illegal opcode at address 0x10B06D ==112820== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112820== by 0x10B06D: main (tool_main.c:234) === End of file valgrind939 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/3/valgrind940 ../src/curl -q --output log/3/curl940.out --include --trace-ascii log/3/trace940 --trace-time smtp://127.0.0.1:33405/940 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/3/stdout940 2> log/3/stderr940 940: 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 940 === Start of file server.cmd Testnum 940 === End of file server.cmd === Start of file stdin-for-940 mail body === End of file stdin-for-940 === Start of file valgrind940 ==112919== ==112919== Process terminating with default action of signal 4 (SIGILL) ==112919== Illegal opcode at address 0x10B06D ==112919== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112919== by 0x10B06D: main (tool_main.c:234) === End of file valgrind940 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/4/valgrind942 ../src/curl -q --output log/4/curl942.out --include --trace-ascii log/4/trace942 --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:35465/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/4/stdout942 2> log/4/stderr942 942: protocol FAILED! There was no content at all in the file log/4/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/6/valgrind941 ../src/curl -q --output log/6/curl941.out --include --trace-ascii log/6/trace941 --trace-time smtp://127.0.0.1:43801/941 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/6/upload941 --crlf > log/6/stdout941 2> log/6/stderr941 CMD (33792): ../libtool --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/valgrind943 ../src/curl -q --output log/8/curl943.out --include --trace-ascii log/8/trace943 --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:37675/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/8/stdout943 2> log/8/stderr943 CMD (33792): ../libtool --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/valgrind944 ../src/curl -q --output log/11/curl944.out --include --trace-ascii log/11/trace944 --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:45107/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/11/stdout944 2> log/11/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/2/valgrind945 ../src/curl -q --output log/2/curl945.out --include --trace-ascii log/2/trace945 --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:35685/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/2/stdout945 2> log/2/stderr945 CMD (33792): ../libtool --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/valgrind946 ../src/curl -q --output log/1/curl946.out --include --trace-ascii log/1/trace946 --trace-time smtp://127.0.0.1:34653/946 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/1/stdout946 2> log/1/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/7/valgrind947 ../src/curl -q --output log/7/curl947.out --include --trace-ascii log/7/trace947 --trace-time smtp://127.0.0.1:36363/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/7/stdout947 2> log/7/stderr947 CMD (33792): ../libtool --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/valgrind948 ../src/curl -q --output log/5/curl948.out --include --trace-ascii log/5/trace948 --trace-time smtp://127.0.0.1:35871/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/5/stdout948 2> log/5/stderr948 2 == Contents of files in the log/4/ dir after test 942 === 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 stdin-for-942 mail body === End of file stdin-for-942 === Start of file valgrind942 ==112962== ==112962== Process terminating with default action of signal 4 (SIGILL) ==112962== Illegal opcode at address 0x10B06D ==112962== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112962== by 0x10B06D: main (tool_main.c:234) === End of file valgrind942 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/6/valgrind941 ../src/curl -q --output log/6/curl941.out --include --trace-ascii log/6/trace941 --trace-time smtp://127.0.0.1:43801/941 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/6/upload941 --crlf > log/6/stdout941 2> log/6/stderr941 941: 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 941 === Start of file server.cmd Testnum 941 === End of file server.cmd === Start of file upload941 From: different To: another email headers and body with unix newlines meant to be converted with the --crlf option === End of file upload941 === Start of file valgrind941 ==112920== ==112920== Process terminating with default action of signal 4 (SIGILL) ==112920== Illegal opcode at address 0x10B06D ==112920== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==112920== by 0x10B06D: main (tool_main.c:234) === End of file valgrind941 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/8/valgrind943 ../src/curl -q --output log/8/curl943.out --include --trace-ascii log/8/trace943 --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:37675/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/8/stdout943 2> log/8/stderr943 943: 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 943 === 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 stdin-for-943 mail body === End of file stdin-for-943 === Start of file valgrind943 ==113075== ==113075== Process terminating with default action of signal 4 (SIGILL) ==113075== Illegal opcode at address 0x10B06D ==113075== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113075== by 0x10B06D: main (tool_main.c:234) === End of file valgrind943 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/11/valgrind944 ../src/curl -q --output log/11/curl944.out --include --trace-ascii log/11/trace944 --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:45107/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/11/stdout944 2> log/11/stderr944 944: 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 944 === Start of file server.cmd AUTH EXTERNAL REPLY AUTH 235 Authenticated Testnum 944 === End of file server.cmd === Start of file stdin-for-944 mail body === End of file stdin-for-944 === Start of file valgrind944 ==113093== ==113093== Process terminating with default action of signal 4 (SIGILL) ==113093== Illegal opcode at address 0x10B06D ==113093== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113093== by 0x10B06D: main (tool_main.c:234) === End of file valgrind944 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/2/valgrind945 ../src/curl -q --output log/2/curl945.out --include --trace-ascii log/2/trace945 --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:35685/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/2/stdout945 2> log/2/stderr945 945: 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 945 === Start of file server.cmd AUTH EXTERNAL REPLY AUTH 235 Authenticated Testnum 945 === End of file server.cmd === Start of file stdin-for-945 mail body === End of file stdin-for-945 === Start of file valgrind945 ==113177== ==113177== Process terminating with default action of signal 4 (SIGILL) ==113177== Illegal opcode at address 0x10B06D ==113177== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113177== by 0x10B06D: main (tool_main.c:234) === End of file valgrind945 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/1/valgrind946 ../src/curl -q --output log/1/curl946.out --include --trace-ascii log/1/trace946 --trace-time smtp://127.0.0.1:34653/946 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/1/stdout946 2> log/1/stderr946 946: 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 946 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 334 OAUTHBEARER supported REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9MzQ2NTMBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= 235 Authenticated Testnum 946 === End of file server.cmd === Start of file stdin-for-946 mail body === End of file stdin-for-946 === Start of file valgrind946 ==113227== ==113227== Process terminating with default action of signal 4 (SIGILL) ==113227== Illegal opcode at address 0x10B06D ==113227== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113227== by 0x10B06D: main (tool_main.c:234) === End of file valgrind946 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/7/valgrind947 ../src/curl -q --output log/7/curl947.out --include --trace-ascii log/7/trace947 --trace-time smtp://127.0.0.1:36363/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/7/stdout947 2> log/7/stderr947 947: 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 947 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 235 Authenticated Testnum 947 === End of file server.cmd === Start of file stdin-for-947 mail body === End of file stdin-for-947 === Start of file valgrind947 ==113239== ==113239== Process terminating with default action of signal 4 (SIGILL) ==113239== Illegal opcode at address 0x10B06D ==113239== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113239== by 0x10B06D: main (tool_main.c:234) === End of file valgrind947 test 0948...[SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation] ../libtoolCMD (33792): ../libtool --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/valgrind950 ../src/curl -q --output log/10/curl950.out --include --trace-ascii log/10/trace950 --trace-time smtp://127.0.0.1:43001/950 --mail-rcpt recipient --request "vrfy" > log/10/stdout950 2> log/10/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/12/valgrind949 ../src/curl -q --output log/12/curl949.out --include --trace-ascii log/12/trace949 --trace-time smtp://127.0.0.1:39987/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/12/stdout949 2> log/12/stderr949 CMD (33792): ../libtool --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/valgrind951 ../src/curl -q --output log/9/curl951.out --include --trace-ascii log/9/trace951 --trace-time smtp://127.0.0.1:39915/951 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/9/stdout951 2> log/9/stderr951 CMD (33792): ../libtool --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/valgrind952 ../src/curl -q --output log/3/curl952.out --include --trace-ascii log/3/trace952 --trace-time smtp://127.0.0.1:33405/952 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/3/stdout952 2> log/3/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/4/valgrind953 ../src/curl -q --output log/4/curl953.out --include --trace-ascii log/4/trace953 --trace-time smtp://127.0.0.1:35465/953 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/4/stdout953 2> log/4/stderr953 CMD (33792): ../libtool --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/valgrind954 ../src/curl -q --output log/6/curl954.out --include --trace-ascii log/6/trace954 --trace-time smtp://127.0.0.1:43801/954 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/6/stdout954 2> log/6/stderr954 --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/valgrind948 ../src/curl -q --output log/5/curl948.out --include --trace-ascii log/5/trace948 --trace-time smtp://127.0.0.1:35871/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/5/stdout948 2> log/5/stderr948 948: 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 948 === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 334 OAUTHBEARER supported REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9MzU4NzEBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= 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 stdin-for-948 mail body === End of file stdin-for-948 === Start of file valgrind948 ==113287== ==113287== Process terminating with default action of signal 4 (SIGILL) ==113287== Illegal opcode at address 0x10B06D ==113287== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113287== by 0x10B06D: main (tool_main.c:234) === End of file valgrind948 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/10/valgrind950 ../src/curl -q --output log/10/curl950.out --include --trace-ascii log/10/trace950 --trace-time smtp://127.0.0.1:43001/950 --mail-rcpt recipient --request "vrfy" > log/10/stdout950 2> log/10/stderr950 950: 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 950 === Start of file server.cmd Testnum 950 === End of file server.cmd === Start of file valgrind950 ==113307== ==113307== Process terminating with default action of signal 4 (SIGILL) ==113307== Illegal opcode at address 0x10B06D ==113307== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113307== by 0x10B06D: 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/12/valgrind949 ../src/curl -q --output log/12/curl949.out --include --trace-ascii log/12/trace949 --trace-time smtp://127.0.0.1:39987/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/12/stdout949 2> log/12/stderr949 949: 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 949 === 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 stdin-for-949 mail body === End of file stdin-for-949 === Start of file valgrind949 ==113309== ==113309== Process terminating with default action of signal 4 (SIGILL) ==113309== Illegal opcode at address 0x10B06D ==113309== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113309== by 0x10B06D: main (tool_main.c:234) === End of file valgrind949 test 0951...[SMTP data with dot as first 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/9/valgrind951 ../src/curl -q --output log/9/curl951.out --include --trace-ascii log/9/trace951 --trace-time smtp://127.0.0.1:39915/951 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/9/stdout951 2> log/9/stderr951 951: 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 951 === Start of file server.cmd Testnum 951 === End of file server.cmd === Start of file stdin-for-951 .This first line starts with a dot === End of file stdin-for-951 === Start of file valgrind951 ==113478== ==113478== Process terminating with default action of signal 4 (SIGILL) ==113478== Illegal opcode at address 0x10B06D ==113478== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113478== by 0x10B06D: main (tool_main.c:234) === End of file valgrind951 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/3/valgrind952 ../src/curl -q --output log/3/curl952.out --include --trace-ascii log/3/trace952 --trace-time smtp://127.0.0.1:33405/952 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/3/stdout952 2> log/3/stderr952 952: 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 952 === Start of file server.cmd Testnum 952 === End of file server.cmd === Start of file stdin-for-952 . === End of file stdin-for-952 === Start of file valgrind952 ==113533== ==113533== Process terminating with default action of signal 4 (SIGILL) ==113533== Illegal opcode at address 0x10B06D ==113533== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113533== by 0x10B06D: main (tool_main.c:234) === End of file valgrind952 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/4/valgrind953 ../src/curl -q --output log/4/curl953.out --include --trace-ascii log/4/trace953 --trace-time smtp://127.0.0.1:35465/953 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/4/stdout953 2> log/4/stderr953 953: 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 953 === 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 stdin-for-953 mail body === End of file stdin-for-953 === Start of file valgrind953 ==113549== ==113549== Process terminating with default action of signal 4 (SIGILL) ==113549== Illegal opcode at address 0x10B06D ==113549== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113549== by 0x10B06D: main (tool_main.c:234) === End of file valgrind953 test 0954...[SMTP plain authentication with alternative 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/6/valgrind954 ../src/curl -q --output log/6/curl954.out --include --trace-ascii log/6/trace954 --trace-time smtp://127.0.0.1:43801/954 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/8/stdout955 2> log/8/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/11/valgrind956 ../src/curl -q --output log/11/curl956.out --include --trace-ascii log/11/trace956 --trace-time smtp://127.0.0.1:45107/956 --mail-rcpt Stödmottagaren@example.com --mail-from sender@example.com -T - log/11/stdout956 2> log/11/stderr956 CMD (0): perl -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 > log/8/stdout971 2> log/8/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/2/valgrind957 ../src/curl -q --output log/2/curl957.out --include --trace-ascii log/2/trace957 --trace-time smtp://127.0.0.1:35685/957 --mail-rcpt Användaren > log/2/stdout957 2> log/2/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/1/valgrind958 ../src/curl -q --output log/1/curl958.out --include --trace-ascii log/1/trace958 --trace-time smtp://127.0.0.1:34653/958 --mail-rcpt Användaren@example.com > log/1/stdout958 2> log/1/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/valgrind962 ../src/curl -q --output log/7/curl962.out --include --trace-ascii log/7/trace962 --trace-time smtp://127.0.0.1:36363/962 --mail-rcpt recipient@example.com --mail-from sender@åäö.se -T - log/7/stdout962 2> log/7/stderr962 CMD (33792): ../libtool --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/valgrind964 ../src/curl -q --output log/10/curl964.out --include --trace-ascii log/10/trace964 --trace-time smtp://127.0.0.1:43001/964 --mail-rcpt user@åäö.se > log/10/stdout964 2> log/10/stderr964 in-for-954 > log/6/stdout954 2> log/6/stderr954 954: 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 954 === 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 stdin-for-954 mail body === End of file stdin-for-954 === Start of file valgrind954 ==113559== ==113559== Process terminating with default action of signal 4 (SIGILL) ==113559== Illegal opcode at address 0x10B06D ==113559== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113559== by 0x10B06D: main (tool_main.c:234) === End of file valgrind954 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/8/valgrind955 ../src/curl -q --output log/8/curl955.out --include --trace-ascii log/8/trace955 --trace-time smtp://127.0.0.1:37675/955 --mail-rcpt recipient@example.com --mail-from Avsändaren@example.com -T - log/8/stdout955 2> log/8/stderr955 955: 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 955 === Start of file server.cmd REPLY MAIL 501 not fine enough Testnum 955 === End of file server.cmd === Start of file stdin-for-955 From: different To: another body === End of file stdin-for-955 === Start of file valgrind955 ==113691== ==113691== Process terminating with default action of signal 4 (SIGILL) ==113691== Illegal opcode at address 0x10B06D ==113691== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113691== by 0x10B06D: main (tool_main.c:234) === End of file valgrind955 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/11/valgrind956 ../src/curl -q --output log/11/curl956.out --include --trace-ascii log/11/trace956 --trace-time smtp://127.0.0.1:45107/956 --mail-rcpt Stödmottagaren@example.com --mail-from sender@example.com -T - log/11/stdout956 2> log/11/stderr956 956: 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 956 === Start of file server.cmd Testnum 956 === End of file server.cmd === Start of file stdin-for-956 From: different To: another body === End of file stdin-for-956 === Start of file valgrind956 ==113708== ==113708== Process terminating with default action of signal 4 (SIGILL) ==113708== Illegal opcode at address 0x10B06D ==113708== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113708== by 0x10B06D: main (tool_main.c:234) === End of file valgrind956 * starts no server test 0971...[Verify that options-in-versions and docs/cmdline-opts are in sync] perl -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 > log/8/stdout971 2> log/8/stderr971 valgrind SKIPPED -r-----e--- OK (842 out of 1513, remaining: 00:57, took 0.023s, duration: 01:11) setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");' test 0957...[SMTP VRFY 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/2/valgrind957 ../src/curl -q --output log/2/curl957.out --include --trace-ascii log/2/trace957 --trace-time smtp://127.0.0.1:35685/957 --mail-rcpt Användaren > log/2/stdout957 2> log/2/stderr957 957: 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 957 === Start of file server.cmd Testnum 957 === End of file server.cmd === Start of file valgrind957 ==113796== ==113796== Process terminating with default action of signal 4 (SIGILL) ==113796== Illegal opcode at address 0x10B06D ==113796== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113796== by 0x10B06D: main (tool_main.c:234) === End of file valgrind957 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");' test 0958...[SMTP external VRFY 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/valgrind958 ../src/curl -q --output log/1/curl958.out --include --trace-ascii log/1/trace958 --trace-time smtp://127.0.0.1:34653/958 --mail-rcpt Användaren@example.com > log/1/stdout958 2> log/1/stderr958 958: 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 958 === Start of file server.cmd Testnum 958 === End of file server.cmd === Start of file valgrind958 ==113818== ==113818== Process terminating with default action of signal 4 (SIGILL) ==113818== Illegal opcode at address 0x10B06D ==113818== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113818== by 0x10B06D: main (tool_main.c:234) === End of file valgrind958 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/7/valgrind962 ../src/curl -q --output log/7/curl962.out --include --trace-ascii log/7/trace962 --trace-time smtp://127.0.0.1:36363/962 --mail-rcpt recipient@example.com --mail-from sender@åäö.se -T - log/7/stdout962 2> log/7/stderr962 962: 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 962 === Start of file server.cmd Testnum 962 === End of file server.cmd === Start of file stdin-for-962 From: different To: another body === End of file stdin-for-962 === Start of file valgrind962 ==113838== ==113838== Process terminating with default action of signal 4 (SIGILL) ==113838== Illegal opcode at address 0x10B06D ==113838== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113838== by 0x10B06D: main (tool_main.c:234) === End of file valgrind962 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");' test 0964...[SMTP external VRFY without SMTPUTF8 support (IDN Enabled) - UTF-8 based recipient (host part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=meCMD (33792): ../libtool --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/valgrind965 ../src/curl -q --output log/12/curl965.out --include --trace-ascii log/12/trace965 --trace-time smtp://127.0.0.1:39987/965 --mail-rcpt recipient@example.com --mail-from Avsändaren@åäö.se -T - log/12/stdout965 2> log/12/stderr965 CMD (33792): ../libtool --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/valgrind963 ../src/curl -q --output log/5/curl963.out --include --trace-ascii log/5/trace963 --trace-time smtp://127.0.0.1:35871/963 --mail-rcpt recipient@åäö.se --mail-from sender@example.com -T - log/5/stdout963 2> log/5/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/9/valgrind966 ../src/curl -q --output log/9/curl966.out --include --trace-ascii log/9/trace966 --trace-time smtp://127.0.0.1:39915/966 --mail-rcpt Stödmottagaren@åäö.se --mail-from sender@example.com -T - log/9/stdout966 2> log/9/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/3/valgrind967 ../src/curl -q --output log/3/curl967.out --include --trace-ascii log/3/trace967 --trace-time smtp://127.0.0.1:33405/967 --mail-rcpt Användaren@åäö.se > log/3/stdout967 2> log/3/stderr967 CMD (33792): ../libtool --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/valgrind969 ../src/curl -q --output log/6/curl969.out --include --trace-ascii log/6/trace969 --trace-time smtp://127.0.0.1:43801/969 --mail-rcpt Friends -X EXPN > log/6/stdout969 2> log/6/stderr969 CMD (33792): ../libtool --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/valgrind968 ../src/curl -q --output log/4/curl968.out --include --trace-ascii log/4/trace968 --trace-time smtp://127.0.0.1:35465/968 --mail-rcpt Användaren > log/4/stdout968 2> log/4/stderr968 mcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind964 ../src/curl -q --output log/10/curl964.out --include --trace-ascii log/10/trace964 --trace-time smtp://127.0.0.1:43001/964 --mail-rcpt user@åäö.se > log/10/stdout964 2> log/10/stderr964 964: 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 964 === Start of file server.cmd Testnum 964 === End of file server.cmd === Start of file valgrind964 ==113949== ==113949== Process terminating with default action of signal 4 (SIGILL) ==113949== Illegal opcode at address 0x10B06D ==113949== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113949== by 0x10B06D: main (tool_main.c:234) === End of file valgrind964 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/12/valgrind965 ../src/curl -q --output log/12/curl965.out --include --trace-ascii log/12/trace965 --trace-time smtp://127.0.0.1:39987/965 --mail-rcpt recipient@example.com --mail-from Avsändaren@åäö.se -T - log/12/stdout965 2> log/12/stderr965 965: 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 965 === Start of file server.cmd CAPA SMTPUTF8 Testnum 965 === End of file server.cmd === Start of file stdin-for-965 From: different To: another body === End of file stdin-for-965 === Start of file valgrind965 ==113997== ==113997== Process terminating with default action of signal 4 (SIGILL) ==113997== Illegal opcode at address 0x10B06D ==113997== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113997== by 0x10B06D: main (tool_main.c:234) === End of file valgrind965 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");' test 0963...[SMTP without SMTPUTF8 support (IDN Enabled) - UTF-8 based 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/5/valgrind963 ../src/curl -q --output log/5/curl963.out --include --trace-ascii log/5/trace963 --trace-time smtp://127.0.0.1:35871/963 --mail-rcpt recipient@åäö.se --mail-from sender@example.com -T - log/5/stdout963 2> log/5/stderr963 963: 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 963 === Start of file server.cmd Testnum 963 === End of file server.cmd === Start of file stdin-for-963 From: different To: another body === End of file stdin-for-963 === Start of file valgrind963 ==113932== ==113932== Process terminating with default action of signal 4 (SIGILL) ==113932== Illegal opcode at address 0x10B06D ==113932== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==113932== by 0x10B06D: main (tool_main.c:234) === End of file valgrind963 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/9/valgrind966 ../src/curl -q --output log/9/curl966.out --include --trace-ascii log/9/trace966 --trace-time smtp://127.0.0.1:39915/966 --mail-rcpt Stödmottagaren@åäö.se --mail-from sender@example.com -T - log/9/stdout966 2> log/9/stderr966 966: 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 966 === Start of file server.cmd CAPA SMTPUTF8 Testnum 966 === End of file server.cmd === Start of file stdin-for-966 From: different To: another body === End of file stdin-for-966 === Start of file valgrind966 ==114101== ==114101== Process terminating with default action of signal 4 (SIGILL) ==114101== Illegal opcode at address 0x10B06D ==114101== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114101== by 0x10B06D: main (tool_main.c:234) === End of file valgrind966 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/3/valgrind967 ../src/curl -q --output log/3/curl967.out --include --trace-ascii log/3/trace967 --trace-time smtp://127.0.0.1:33405/967 --mail-rcpt Användaren@åäö.se > log/3/stdout967 2> log/3/stderr967 967: 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 967 === Start of file server.cmd CAPA SMTPUTF8 Testnum 967 === End of file server.cmd === Start of file valgrind967 ==114159== ==114159== Process terminating with default action of signal 4 (SIGILL) ==114159== Illegal opcode at address 0x10B06D ==114159== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114159== by 0x10B06D: main (tool_main.c:234) === End of file valgrind967 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/6/valgrind969 ../src/curl -q --output log/6/curl969.out --include --trace-ascii log/6/trace969 --trace-time smtp://127.0.0.1:43801/969 --mail-rcpt Friends -X EXPN > log/6/stdout969 2> log/6/stderr969 969: 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 969 === Start of file server.cmd CAPA SMTPUTF8 Testnum 969 === End of file server.cmd === Start of file valgrind969 ==114163== ==114163== Process terminating with default action of signal 4 (SIGILL) ==114163== Illegal opcode at address 0x10B06D ==114163== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114163== by 0x10B06D: main (tool_main.c:234) === End of file valgrind969 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/4/valgrind968 ../src/curl -q --output log/4/curl968.out --include --trace-ascii log/4/trace968 --trace-time smtp://127.0.0.1:35465/968 --mail-rcpt Användaren > log/4/stdout968 2> log/4/stderr968 968: 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 968 === Start of file server.cmd CAPA SMTPUTF8 Testnum 968 === End of file server.cmd === Start of file valgrindCMD (33792): ../libtool --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/valgrind974 ../src/curl -q --output log/8/curl974.out --include --trace-ascii log/8/trace974 --trace-time -x http://127.0.0.1:33791 http://firsthost.com -L -u joe:secret > log/8/stdout974 2> log/8/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/11/valgrind973 ../src/curl -q --output log/11/curl973.out --include --trace-ascii log/11/trace973 --trace-time http://127.0.0.1:35843/973 -L -u joe:secret > log/11/stdout973 2> log/11/stderr973 CMD (33792): ../libtool --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-time -x http://127.0.0.1:39283 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/2/valgrind975 ../src/curl -q --output log/2/curl975.out --include --trace-ascii log/2/trace975 --trace-time http://127.0.0.1:44205/975 --location-trusted -u joe:secret > log/2/stdout975 2> log/2/stderr975 CMD (33792): ../libtool --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/valgrind977 ../src/curl -q --output log/7/curl977.out --include --trace-ascii log/7/trace977 --trace-time -x http://127.0.0.1:35853 http://firsthost.me. -c log/7/cookies977 > log/7/stdout977 2> log/7/stderr977 CMD (33792): ../libtool --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/valgrind978 ../src/curl -q --output log/10/curl978.out --include --trace-ascii log/10/trace978 --trace-time http://127.0.0.1:36145/978 --stderr log/10/redir --silent -w '%{stderr}nonsense\n' > log/10/stdout978 2> log/10/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/12/valgrind979 ../src/curl -q --output log/12/curl979.out --include --trace-ascii log/12/trace979 --trace-time http://first:secret@127.0.0.1:44175/979 -L -u smith:doggie > log/12/stdout979 2> log/12/stderr979 CMD (33792): ../libtool --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/valgrind980 ../src/curl -q --output log/5/curl980.out --include --trace-ascii log/5/trace980 --trace-time smtp://127.0.0.1:35871/980 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --ssl --sasl-ir -T - log/5/stdout980 2> log/5/stderr980 968 ==114165== ==114165== Process terminating with default action of signal 4 (SIGILL) ==114165== Illegal opcode at address 0x10B06D ==114165== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114165== by 0x10B06D: main (tool_main.c:234) === End of file valgrind968 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/8/valgrind974 ../src/curl -q --output log/8/curl974.out --include --trace-ascii log/8/trace974 --trace-time -x http://127.0.0.1:33791 http://firsthost.com -L -u joe:secret > log/8/stdout974 2> log/8/stderr974 974: 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 974 === Start of file server.cmd Testnum 974 === End of file server.cmd === Start of file valgrind974 ==114316== ==114316== Process terminating with default action of signal 4 (SIGILL) ==114316== Illegal opcode at address 0x10B06D ==114316== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114316== by 0x10B06D: main (tool_main.c:234) === End of file valgrind974 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/11/valgrind973 ../src/curl -q --output log/11/curl973.out --include --trace-ascii log/11/trace973 --trace-time http://127.0.0.1:35843/973 -L -u joe:secret > log/11/stdout973 2> log/11/stderr973 973: 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 973 === Start of file server.cmd Testnum 973 === End of file server.cmd === Start of file valgrind973 ==114308== ==114308== Process terminating with default action of signal 4 (SIGILL) ==114308== Illegal opcode at address 0x10B06D ==114308== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114308== by 0x10B06D: main (tool_main.c:234) === End of file valgrind973 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-time -x http://127.0.0.1:39283 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 server.cmd Testnum 976 === End of file server.cmd === Start of file valgrind976 ==114424== ==114424== Process terminating with default action of signal 4 (SIGILL) ==114424== Illegal opcode at address 0x10B06D ==114424== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114424== by 0x10B06D: main (tool_main.c:234) === End of file valgrind976 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/2/valgrind975 ../src/curl -q --output log/2/curl975.out --include --trace-ascii log/2/trace975 --trace-time http://127.0.0.1:44205/975 --location-trusted -u joe:secret > log/2/stdout975 2> log/2/stderr975 975: 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 975 === Start of file server.cmd Testnum 975 === End of file server.cmd === Start of file valgrind975 ==114408== ==114408== Process terminating with default action of signal 4 (SIGILL) ==114408== Illegal opcode at address 0x10B06D ==114408== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114408== by 0x10B06D: main (tool_main.c:234) === End of file valgrind975 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/7/valgrind977 ../src/curl -q --output log/7/curl977.out --include --trace-ascii log/7/trace977 --trace-time -x http://127.0.0.1:35853 http://firsthost.me. -c log/7/cookies977 > log/7/stdout977 2> log/7/stderr977 977: 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 977 === Start of file server.cmd Testnum 977 === End of file server.cmd === Start of file valgrind977 ==114423== ==114423== Process terminating with default action of signal 4 (SIGILL) ==114423== Illegal opcode at address 0x10B06D ==114423== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114423== by 0x10B06D: main (tool_main.c:234) === End of file valgrind977 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/10/valgrind978 ../src/curl -q --output log/10/curl978.out --include --trace-ascii log/10/trace978 --trace-time http://127.0.0.1:36145/978 --stderr log/10/redir --silent -w '%{stderr}nonsense\n' > log/10/stdout978 2> log/10/stderr978 978: 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 978 === Start of file server.cmd Testnum 978 === End of file server.cmd === Start of file valgrind978 ==114486== ==114486== Process terminating with default action of signal 4 (SIGILL) ==114486== Illegal opcode at address 0x10B06D ==114486== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114486== by 0x10B06D: main (tool_main.c:234) === End of file valgrind978 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/12/valgrind979 ../src/curl -q --output log/12/curl979.out --include --trace-ascii log/12/trace979 --trace-time http://first:secret@127.0.0.1:44175/979 -L -u smith:doggie > log/12/stdout979 2> log/12/stderr979 979: 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 979 === Start of file server.cmd Testnum 979 === End of file server.cmd === Start of file valgrind979 ==114508== ==114508== Process terminating with default action of signal 4 (SIGILL) ==114508== Illegal opcode at address 0x10B06D ==114508== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114508== by 0x10B06D: main (tool_main.c:234) === End of file valgrind979 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/5/valgrind980 ../src/curl -q --output log/5/curl980.out --include --trace-ascii log/5/trace980 --trace-time smtp://127.0.0.1:35871/980 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --ssl --sasl-ir -T - log/5/stdout980 2> log/5/stderr980 980: 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 980 CMD (33792): ../libtool --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/valgrind981 ../src/curl -q --output log/9/curl981.out --include --trace-ascii log/9/trace981 --trace-time imap://127.0.0.1:38157/981 -T log/9/upload981 -u user:secret --ssl > log/9/stdout981 2> log/9/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/3/valgrind982 ../src/curl -q --output log/3/curl982.out --include --trace-ascii log/3/trace982 --trace-time pop3://127.0.0.1:45905/982 -u user:secret --ssl > log/3/stdout982 2> log/3/stderr982 CMD (0): ../src/curl -q --output log/3/curl1004.out --include --trace-ascii log/3/trace1004 --trace-time http://127.0.0.1:46313/1004 --proxy "" > log/3/stdout1004 2> log/3/stderr1004 CMD (33792): ../libtool --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/valgrind983 ../src/curl -q --output log/6/curl983.out --include --trace-ascii log/6/trace983 --trace-time --ssl --ftp-ssl-control ftp://127.0.0.1:35103/983 -T log/6/test983.txt -u user:secret -P 127.0.0.1 > log/6/stdout983 2> log/6/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/4/valgrind984 ../src/curl -q --output log/4/curl984.out --include --trace-ascii log/4/trace984 --trace-time imap://127.0.0.1:42393/984 -T log/4/upload984 -u user:secret --ssl-reqd > log/4/stdout984 2> log/4/stderr984 CMD (33792): ../libtool --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/valgrind985 ../src/curl -q --output log/8/curl985.out --include --trace-ascii log/8/trace985 --trace-time pop3://127.0.0.1:39353/985 -u user:secret --ssl-reqd > log/8/stdout985 2> log/8/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/11/valgrind986 ../src/curl -q --output log/11/curl986.out --include --trace-ascii log/11/trace986 --trace-time --ssl-reqd --ftp-ssl-control ftp://127.0.0.1:36091/986 -T log/11/test986.txt -u user:secret > log/11/stdout986 2> log/11/stderr986 === 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 stdin-for-980 mail body === End of file stdin-for-980 === Start of file valgrind980 ==114513== ==114513== Process terminating with default action of signal 4 (SIGILL) ==114513== Illegal opcode at address 0x10B06D ==114513== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114513== by 0x10B06D: main (tool_main.c:234) === End of file valgrind980 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/9/valgrind981 ../src/curl -q --output log/9/curl981.out --include --trace-ascii log/9/trace981 --trace-time imap://127.0.0.1:38157/981 -T log/9/upload981 -u user:secret --ssl > log/9/stdout981 2> log/9/stderr981 981: 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 981 === 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 ==114702== ==114702== Process terminating with default action of signal 4 (SIGILL) ==114702== Illegal opcode at address 0x10B06D ==114702== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114702== by 0x10B06D: main (tool_main.c:234) === End of file valgrind981 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/3/valgrind982 ../src/curl -q --output log/3/curl982.out --include --trace-ascii log/3/trace982 --trace-time pop3://127.0.0.1:45905/982 -u user:secret --ssl > log/3/stdout982 2> log/3/stderr982 982: 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 982 === 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 ==114718== ==114718== Process terminating with default action of signal 4 (SIGILL) ==114718== Illegal opcode at address 0x10B06D ==114718== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114718== by 0x10B06D: main (tool_main.c:234) === End of file valgrind982 test 1004...[HTTP GET with empty proxy] ../src/curl -q --output log/3/curl1004.out --include --trace-ascii log/3/trace1004 --trace-time http://127.0.0.1:46313/1004 --proxy "" > log/3/stdout1004 2> log/3/stderr1004 valgrind SKIPPED --pd---e--- OK (867 out of 1513, remaining: 00:54, took 0.042s, duration: 01:12) 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/6/valgrind983 ../src/curl -q --output log/6/curl983.out --include --trace-ascii log/6/trace983 --trace-time --ssl --ftp-ssl-control ftp://127.0.0.1:35103/983 -T log/6/test983.txt -u user:secret -P 127.0.0.1 > log/6/stdout983 2> log/6/stderr983 983: 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 983 === 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 ==114775== ==114775== Process terminating with default action of signal 4 (SIGILL) ==114775== Illegal opcode at address 0x10B06D ==114775== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114775== by 0x10B06D: 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/4/valgrind984 ../src/curl -q --output log/4/curl984.out --include --trace-ascii log/4/trace984 --trace-time imap://127.0.0.1:42393/984 -T log/4/upload984 -u user:secret --ssl-reqd > log/4/stdout984 2> log/4/stderr984 984: 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 984 === 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 ==114800== ==114800== Process terminating with default action of signal 4 (SIGILL) ==114800== Illegal opcode at address 0x10B06D ==114800== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114800== by 0x10B06D: 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/8/valgrind985 ../src/curl -q --output log/8/curl985.out --include --trace-ascii log/8/trace985 --trace-time pop3://127.0.0.1:39353/985 -u user:secret --ssl-reqd > log/8/stdout985 2> log/8/stderr985 985: 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 985 === Start of file server.cmd REPLY CAPA -ERR Not implemented Testnum 985 === End of file server.cmd === Start of file valgrind985 ==114916== ==114916== Process terminating with default action of signal 4 (SIGILL) ==114916== Illegal opcode at address 0x10B06D ==114916== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114916== by 0x10B06D: main (tool_main.c:234) === End of file valgrind985 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/11/valgrind986 ../src/curl -q --output log/11/curl986.out --include --trace-ascii log/11/trace986 --trace-time --ssl-reqd --ftp-ssl-control ftp://127.0.0.1:36091/986 -T log/11/test986.txt -u user:secret > log/11/stdout986 2> log/11/stderr986 986: 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 986 === Start of file server.cmd REPLY welcome 230 Welcome REPLY AUTCMD (33792): ../libtool --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/valgrind990 ../src/curl -q --output log/1/curl990.out --include --trace-ascii log/1/trace990 --trace-time http://127.0.0.1:39283/990 -w '%output{log/1/output}%{http_code}\n' > log/1/stdout990 2> log/1/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/7/valgrind992 ../src/curl -q --output log/7/curl992.out --include --trace-ascii log/7/trace992 --trace-time smtp://127.0.0.1:36363/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/7/stdout992 2> log/7/stderr992 CMD (33792): ../libtool --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/valgrind991 ../src/curl -q --output log/2/curl991.out --include --trace-ascii log/2/trace991 --trace-time http://127.0.0.1:44205/991 -w '%output{>>log/2/output}%{http_code}' > log/2/stdout991 2> log/2/stderr991 CMD (33792): ../libtool --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/valgrind1001 ../src/curl -q --output log/12/curl1001.out --include --trace-ascii log/12/trace1001 --trace-time http://127.0.0.1:44175/1001 -u auser:apasswd --digest -T log/12/1001 -x http://127.0.0.1:44175 -C 2 -X GET > log/12/stdout1001 2> log/12/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/10/valgrind1000 ../src/curl -q --output log/10/curl1000.out --include --trace-ascii log/10/trace1000 --trace-time ftp://127.0.0.1:33661/1000/ -I > log/10/stdout1000 2> log/10/stderr1000 CMD (33792): ../libtool --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-time http://127.0.0.1:33519/1002.upload1 -T log/5/1002 http://127.0.0.1:33519/1002.upload2 -T log/5/1002 -u auser:apasswd --digest -x http://127.0.0.1:33519 -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/9/valgrind1003 ../src/curl -q --output log/9/curl1003.out --include --trace-ascii log/9/trace1003 --trace-time ftp://127.0.0.1:39811/path/1003 > log/9/stdout1003 2> log/9/stderr1003 H 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 ==114929== ==114929== Process terminating with default action of signal 4 (SIGILL) ==114929== Illegal opcode at address 0x10B06D ==114929== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==114929== by 0x10B06D: main (tool_main.c:234) === End of file valgrind986 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/1/valgrind990 ../src/curl -q --output log/1/curl990.out --include --trace-ascii log/1/trace990 --trace-time http://127.0.0.1:39283/990 -w '%output{log/1/output}%{http_code}\n' > log/1/stdout990 2> log/1/stderr990 990: 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 990 === Start of file server.cmd Testnum 990 === End of file server.cmd === Start of file valgrind990 ==115019== ==115019== Process terminating with default action of signal 4 (SIGILL) ==115019== Illegal opcode at address 0x10B06D ==115019== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115019== by 0x10B06D: main (tool_main.c:234) === End of file valgrind990 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/7/valgrind992 ../src/curl -q --output log/7/curl992.out --include --trace-ascii log/7/trace992 --trace-time smtp://127.0.0.1:36363/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/7/stdout992 2> log/7/stderr992 992: 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 992 === 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 stdin-for-992 mail body === End of file stdin-for-992 === Start of file valgrind992 ==115046== ==115046== Process terminating with default action of signal 4 (SIGILL) ==115046== Illegal opcode at address 0x10B06D ==115046== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115046== by 0x10B06D: main (tool_main.c:234) === End of file valgrind992 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/2/valgrind991 ../src/curl -q --output log/2/curl991.out --include --trace-ascii log/2/trace991 --trace-time http://127.0.0.1:44205/991 -w '%output{>>log/2/output}%{http_code}' > log/2/stdout991 2> log/2/stderr991 991: 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 991 === 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 valgrind991 ==115043== ==115043== Process terminating with default action of signal 4 (SIGILL) ==115043== Illegal opcode at address 0x10B06D ==115043== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115043== by 0x10B06D: main (tool_main.c:234) === End of file valgrind991 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/12/valgrind1001 ../src/curl -q --output log/12/curl1001.out --include --trace-ascii log/12/trace1001 --trace-time http://127.0.0.1:44175/1001 -u auser:apasswd --digest -T log/12/1001 -x http://127.0.0.1:44175 -C 2 -X GET > log/12/stdout1001 2> log/12/stderr1001 1001: 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 1001 === Start of file 1001 test === End of file 1001 === Start of file server.cmd Testnum 1001 === End of file server.cmd === Start of file valgrind1001 ==115122== ==115122== Process terminating with default action of signal 4 (SIGILL) ==115122== Illegal opcode at address 0x10B06D ==115122== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115122== by 0x10B06D: 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/10/valgrind1000 ../src/curl -q --output log/10/curl1000.out --include --trace-ascii log/10/trace1000 --trace-time ftp://127.0.0.1:33661/1000/ -I > log/10/stdout1000 2> log/10/stderr1000 1000: 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 1000 === Start of file server.cmd Testnum 1000 === End of file server.cmd === Start of file valgrind1000 ==115052== ==115052== Process terminating with default action of signal 4 (SIGILL) ==115052== Illegal opcode at address 0x10B06D ==115052== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115052== by 0x10B06D: 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-time http://127.0.0.1:33519/1002.upload1 -T log/5/1002 http://127.0.0.1:33519/1002.upload2 -T log/5/1002 -u auser:apasswd --digest -x http://127.0.0.1:33519 -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 server.cmd Testnum 1002 === End of file server.cmd === Start of file valgrind1002 ==115185== ==115185== Process terminating with default action of signal 4 (SIGILL) ==115185== Illegal opcode at address 0x10B06D ==115185== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115185== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1002 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/9/valgrind1003 ../src/curl -q --output log/9/curl1003.out --include --trace-ascii log/9/trace1003 --trace-time ftp://127.0.0.1:39811/path/1003 > log/9/stdout1003 2> log/9/stderr1003 1003: 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 1003 === Start of file server.cmd REPLY CWD 250 CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMD (33792): ../libtool --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/valgrind1006 ../src/curl -q --output log/6/curl1006.out --include --trace-ascii log/6/trace1006 --trace-time ftp://127.0.0.1:35103/path/1006 > log/6/stdout1006 2> log/6/stderr1006 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB Testnum 1003 === End of file server.cmd === Start of file valgrind1003 ==115327== ==115327== Process terminating with default action of signal 4 (SIGILL) ==115327== Illegal opcode at address 0x10B06D ==115327== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115327== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1003 test 1006...[FTP with excessively large number of 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/6/valgrind1006 ../src/curl -q --output log/6/curl1006.out --include --trace-ascii log/6/trace1006 --trace-time ftp://127.0.0.1:35103/path/1006 > log/6/stdout1006 2> log/6/stderr1006 1006: 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 1006 === 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\n250CMD (33792): ../libtool --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/valgrind1005 ../src/curl -q --output log/3/curl1005.out --include --trace-ascii log/3/trace1005 --trace-time ftp://127.0.0.1:45493/path/1005 > log/3/stdout1005 2> log/3/stderr1005 -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-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 ==115397== ==115397== Process terminating with default action of signal 4 (SIGILL) ==115397== Illegal opcode at address 0x10B06D ==115397== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115397== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1006 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/3/valgrind1005 ../src/curl -q --output log/3/curl1005.out --include --trace-ascii log/3/trace1005 --trace-time ftp://127.0.0.1:45493/path/1005 > log/3/stdout1005 2> log/3/stderr1005 1005: 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 1005 === 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-AAAACMD (33792): ../libtool --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/valgrind1007 ../src/curl -q --output log/4/curl1007.out --include --trace-ascii log/4/trace1007 --trace-time -T log/4/test1007.txt tftp://127.0.0.1:54777//invalid-file -sS > log/4/stdout1007 2> log/4/stderr1007 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-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 ==115385== ==115385== Process terminating with default action of signal 4 (SIGILL) ==115385== Illegal opcode at address 0x10B06D ==115385== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115385== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1005 CMD (33792): ../libtool --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/valgrind1008 ../src/curl -q --output log/8/curl1008.out --include --trace-ascii log/8/trace1008 --trace-time http://test.remote.example.com.1008:33791/path/10080002 --proxy http://127.0.0.1:33791 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/8/stdout1008 2> log/8/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/1/valgrind1010 ../src/curl -q --output log/1/curl1010.out --include --trace-ascii log/1/trace1010 --trace-time ftp://127.0.0.1:35701//list/this/path/1010/ ftp://127.0.0.1:35701//list/this/path/1010/ --ftp-method nocwd > log/1/stdout1010 2> log/1/stderr1010 CMD (33792): ../libtool --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/valgrind1011 ../src/curl -q --output log/7/curl1011.out --include --trace-ascii log/7/trace1011 --trace-time http://127.0.0.1:35853/blah/1011 -L -d "moo" > log/7/stdout1011 2> log/7/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/12/valgrind1013 ../src/curl -q --output log/12/curl1013.out --include --trace-ascii log/12/trace1013 --trace-time --version > log/12/stdout1013 2> log/12/stderr1013 CMD (33792): ../libtool --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/valgrind1015 ../src/curl -q --output log/5/curl1015.out --include --trace-ascii log/5/trace1015 --trace-time http://127.0.0.1:33519/1015 --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@log/5/1015.txt" --data-urlencode @log/5/1015.txt > log/5/stdout1015 2> log/5/stderr1015 CMD (33792): ../libtool --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/valgrind1012 ../src/curl -q --output log/2/curl1012.out --include --trace-ascii log/2/trace1012 --trace-time http://127.0.0.1:44205/blah/1012 -L -d "moo" --post301 > log/2/stdout1012 2> log/2/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/9/valgrind1016 ../src/curl -q --trace-ascii log/9/trace1016 --trace-time -r 1-4 file://localhost/startdir/src/build-curl/tests/log/9/test1016.txt > log/9/stdout1016 2> log/9/stderr1016 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/4/valgrind1007 ../src/curl -q --output log/4/curl1007.out --include --trace-ascii log/4/trace1007 --trace-time -T log/4/test1007.txt tftp://127.0.0.1:54777//invalid-file -sS > log/4/stdout1007 2> log/4/stderr1007 1007: stderr FAILED: --- log/4/check-expected 2024-05-23 11:16:54.931103989 +0200 +++ log/4/check-generated 2024-05-23 11:16:54.931103989 +0200 @@ -1 +0,0 @@ -curl: (69) TFTP: Access Violation[LF] == Contents of files in the log/4/ dir after test 1007 === Start of file check-expected curl: (69) TFTP: Access Violation[LF] === End of file check-expected === 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 valgrind1007 ==115474== ==115474== Process terminating with default action of signal 4 (SIGILL) ==115474== Illegal opcode at address 0x10B06D ==115474== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115474== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1007 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/8/valgrind1008 ../src/curl -q --output log/8/curl1008.out --include --trace-ascii log/8/trace1008 --trace-time http://test.remote.example.com.1008:33791/path/10080002 --proxy http://127.0.0.1:33791 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/8/stdout1008 2> log/8/stderr1008 1008: 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 1008 === Start of file server.cmd connection-monitor Testnum 1008 === End of file server.cmd === Start of file valgrind1008 ==115547== ==115547== Process terminating with default action of signal 4 (SIGILL) ==115547== Illegal opcode at address 0x10B06D ==115547== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115547== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1008 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/1/valgrind1010 ../src/curl -q --output log/1/curl1010.out --include --trace-ascii log/1/trace1010 --trace-time ftp://127.0.0.1:35701//list/this/path/1010/ ftp://127.0.0.1:35701//list/this/path/1010/ --ftp-method nocwd > log/1/stdout1010 2> log/1/stderr1010 1010: 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 1010 === Start of file server.cmd Testnum 1010 === End of file server.cmd === Start of file valgrind1010 ==115597== ==115597== Process terminating with default action of signal 4 (SIGILL) ==115597== Illegal opcode at address 0x10B06D ==115597== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115597== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1010 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/7/valgrind1011 ../src/curl -q --output log/7/curl1011.out --include --trace-ascii log/7/trace1011 --trace-time http://127.0.0.1:35853/blah/1011 -L -d "moo" > log/7/stdout1011 2> log/7/stderr1011 1011: 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 1011 === Start of file server.cmd Testnum 1011 === End of file server.cmd === Start of file valgrind1011 ==115606== ==115606== Process terminating with default action of signal 4 (SIGILL) ==115606== Illegal opcode at address 0x10B06D ==115606== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115606== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1011 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/5/valgrind1015 ../src/curl -q --output log/5/curl1015.out --include --trace-ascii log/5/trace1015 --trace-time http://127.0.0.1:33519/1015 --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@log/5/1015.txt" --data-urlencode @log/5/1015.txt > log/5/stdout1015 2> log/5/stderr1015 1015: 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 1015 === Start of file 1015.txt content to _?!#$'|<> === End of file 1015.txt === Start of file server.cmd Testnum 1015 === End of file server.cmd === Start of file valgrind1015 ==115666== ==115666== Process terminating with default action of signal 4 (SIGILL) ==115666== Illegal opcode at address 0x10B06D ==115666== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115666== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1015 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/2/valgrind1012 ../src/curl -q --output log/2/curl1012.out --include --trace-ascii log/2/trace1012 --trace-time http://127.0.0.1:44205/blah/1012 -L -d "moo" --post301 > log/2/stdout1012 2> log/2/stderr1012 1012: 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 1012 === Start of file server.cmd Testnum 1012 === End of file server.cmd === Start of file valgrind1012 ==115608== ==115608== Process terminating with default action of signal 4 (SIGILL) ==115608== Illegal opcode at address 0x10B06D ==115608== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115608== by 0x10B06D: 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/10/valgrind1014 ../src/curl -q --output log/10/curl1014.out --include --trace-ascii log/10/trace1014 --trace-time --version > log/10/stdout1014 2> log/10/stderr1014 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 CMD (256): /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/12/stdout1013 protocols Mismatch in features lists: curl: curl-config: 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 CMD (256): /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/10/stdout1014 features CMD (33792): ../libtool --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/valgrind1017 ../src/curl -q --trace-ascii log/6/trace1017 --trace-time -r 0-3 file://localhost/startdir/src/build-curl/tests/log/6/test1017.txt > log/6/stdout1017 2> log/6/stderr1017 * 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/9/valgrind1016 ../src/curl -q --trace-ascii log/9/trace1016 --trace-time -r 1-4 file://localhost/startdir/src/build-curl/tests/log/9/test1016.txt > log/9/stdout1016 2> log/9/stderr1016 1016: stdout FAILED: --- log/9/check-expected 2024-05-23 11:16:55.381113231 +0200 +++ log/9/check-generated 2024-05-23 11:16:55.381113231 +0200 @@ -1 +0,0 @@ -2345 == Contents of files in the log/9/ dir after test 1016 === Start of file check-expected 2345 === End of file check-expected === 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 ==115881== ==115881== Process terminating with default action of signal 4 (SIGILL) ==115881== Illegal opcode at address 0x10B06D ==115881== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115881== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1016 * 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/12/valgrind1013 ../src/curl -q --output log/12/curl1013.out --include --trace-ascii log/12/trace1013 --trace-time --version > log/12/stdout1013 2> log/12/stderr1013 postcheck /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/12/stdout1013 protocols 1013: postcheck FAILED == Contents of files in the log/12/ dir after test 1013 === Start of file server.cmd Testnum 1013 === End of file server.cmd === Start of file valgrind1013 ==115629== ==115629== Process terminating with default action of signal 4 (SIGILL) ==115629== Illegal opcode at address 0x10B06D ==115629== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115629== by 0x10B06D: 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/10/valgrind1014 ../src/curl -q --output log/10/curl1014.out --include --trace-ascii log/10/trace1014 --trace-time --version > log/10/stdout1014 2> log/10/stderr1014 postcheck /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/10/stdout1014 features 1014: postcheck FAILED == Contents of files in the log/10/ dir after test 1014 === Start of file server.cmd Testnum 1014 === End of file server.cmd === Start of file valgrind1014 ==115648== ==115648== Process terminating with default action of signal 4 (SIGILL) ==115648== Illegal opcode at address 0x10B06D ==115648== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115648== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1014 CMD (33792): ../libtool --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/valgrind1018 ../src/curl -q --trace-ascii log/3/trace1018 --trace-time -r 4-4 file://localhost/startdir/src/build-curl/tests/log/3/test1018.txt > log/3/stdout1018 2> log/3/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/4/valgrind1019 ../src/curl -q --trace-ascii log/4/trace1019 --trace-time -r 7- file://localhost/startdir/src/build-curl/tests/log/4/test1019.txt > log/4/stdout1019 2> log/4/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/6/valgrind1017 ../src/curl -q --trace-ascii log/6/trace1017 --trace-time -r 0-3 file://localhost/startdir/src/build-curl/tests/log/6/test1017.txt > log/6/stdout1017 2> log/6/stderr1017 1017: stdout FAILED: --- log/6/check-expected 2024-05-23 11:16:55.401113643 +0200 +++ log/6/check-generated 2024-05-23 11:16:55.401113643 +0200 @@ -1 +0,0 @@ -1234 == Contents of files in the log/6/ dir after test 1017 === Start of file check-expected 1234 === End of file check-expected === 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 ==115909== ==115909== Process terminating with default action of signal 4 (SIGILL) ==115909== Illegal opcode at address 0x10B06D ==115909== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115909== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1017 * 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/3/valgrind1018 ../src/curl -q --trace-ascii log/3/trace1018 --trace-time -r 4-4 file://localhost/startdir/src/build-curl/tests/log/3/test1018.txt > log/3/stdout1018 2> log/3/stderr1018 1018: stdout FAILED: --- log/3/check-expected 2024-05-23 11:16:55.517782705 +0200 +++ log/3/check-generated 2024-05-23 11:16:55.517782705 +0200 @@ -1 +0,0 @@ -5 == Contents of files in the log/3/ dir after test 1018 === Start of file check-expected 5 === End of file check-expected === 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 ==115985== ==115985== Process terminating with default action of signal 4 (SIGILL) ==115985== Illegal opcode at address 0x10B06D ==115985== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==115985== by 0x10B06D: 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/8/valgrind1020 ../src/curl -q --trace-ascii log/8/trace1020 --trace-time -r -9 file://localhost/startdir/src/build-curl/tests/log/8/test1020.txt > log/8/stdout1020 2> log/8/stderr1020 * 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/4/valgrind1019 ../src/curl -q --trace-ascii log/4/trace1019 --trace-time -r 7- file://localhost/startdir/src/build-curl/tests/log/4/test1019.txt > log/4/stdout1019 2> log/4/stderr1019 1019: stdout FAILED: --- log/4/check-expected 2024-05-23 11:16:55.524449509 +0200 +++ log/4/check-generated 2024-05-23 11:16:55.524449509 +0200 @@ -1,2 +0,0 @@ -890[LF] -1234567890[LF] == Contents of files in the log/4/ dir after test 1019 === Start of file check-expected 890[LF] 1234567890[LF] === End of file check-expected === 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 ==116006== ==116006== Process terminating with default action of signal 4 (SIGILL) ==116006== Illegal opcode at address 0x10B06D ==116006== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116006== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1019 CMD (33792): ../libtool --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/valgrind1025 ../src/curl -q --output log/9/curl1025.out --include --trace-ascii log/9/trace1025 --trace-time http://127.0.0.1:40247/want/1025 -L -c log/9/jar1025 -b forcedcookie=yes > log/9/stdout1025 2> log/9/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/1/valgrind1021 ../src/curl -q --output log/1/curl1021.out --include --trace-ascii log/1/trace1021 --trace-time http://test.remote.example.com.1021:39283/path/10210002 --proxy http://127.0.0.1:39283 --proxy-user testuser:testpass --proxy-anyauth --proxytunnel > log/1/stdout1021 2> log/1/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/6/valgrind1029 ../src/curl -q --include --trace-ascii log/6/trace1029 --trace-time http://127.0.0.1:41583/we/want/our/1029 -w '%{redirect_url} %{url} %{exitcode} %{errormsg}\n' > log/6/stdout1029 2> log/6/stderr1029 CMD (33792): ../libtool --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/valgrind1024 ../src/curl -q --output log/2/curl1024.out --include --trace-ascii log/2/trace1024 --trace-time http://127.0.0.1:44205/want/1024 -L -c log/2/jar1024 > log/2/stdout1024 2> log/2/stderr1024 * 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/8/valgrind1020 ../src/curl -q --trace-ascii log/8/trace1020 --trace-time -r -9 file://localhost/startdir/src/build-curl/tests/log/8/test1020.txt > log/8/stdout1020 2> log/8/stderr1020 1020: stdout FAILED: --- log/8/check-expected 2024-05-23 11:16:55.727787018 +0200 +++ log/8/check-generated 2024-05-23 11:16:55.727787018 +0200 @@ -1 +0,0 @@ -34567890[LF] == Contents of files in the log/8/ dir after test 1020 === Start of file check-expected 34567890[LF] === End of file check-expected === 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 ==116085== ==116085== Process terminating with default action of signal 4 (SIGILL) ==116085== Illegal opcode at address 0x10B06D ==116085== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116085== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1020 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/9/valgrind1025 ../src/curl -q --output log/9/curl1025.out --include --trace-ascii log/9/trace1025 --trace-time http://127.0.0.1:40247/want/1025 -L -c log/9/jar1025 -b forcedcookie=yes > log/9/stdout1025 2> log/9/stderr1025 1025: 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 1025 === Start of file server.cmd Testnum 1025 === End of file server.cmd === Start of file valgrind1025 ==116271== ==116271== Process terminating with default action of signal 4 (SIGILL) ==116271== Illegal opcode at address 0x10B06D ==116271== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116271== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1025 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/1/valgrind1021 ../src/curl -q --output log/1/curl1021.out --include --trace-ascii log/1/trace1021 --trace-time http://test.remote.example.com.1021:39283/path/10210002 --proxy http://127.0.0.1:39283 --proxy-user testuser:testpass --proxy-anyauth --proxytunnel > log/1/stdout1021 2> log/1/stderr1021 1021: 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 1021 === Start of file server.cmd Testnum 1021 === End of file server.cmd === Start of file valgrind1021 ==116132== ==116132== Process terminating with default action of signal 4 (SIGILL) ==116132== Illegal opcode at address 0x10B06D ==116132== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116132== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1021 CMD (33792): ../libtool --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/valgrind1027 ../src/curl -q --output log/12/curl1027.out --include --trace-ascii log/12/trace1027 --trace-time --help > log/12/stdout1027 2> log/12/stderr1027 CMD (33792): ../libtool --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/valgrind1023 ../src/curl -q --output log/5/curl1023.out --include --trace-ascii log/5/trace1023 --trace-time --version > log/5/stdout1023 2> log/5/stderr1023 CMD (33792): ../libtool --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/valgrind1022 ../src/curl -q --output log/7/curl1022.out --include --trace-ascii log/7/trace1022 --trace-time --version > log/7/stdout1022 2> log/7/stderr1022 CMD (256): 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/12/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/10/valgrind1028 ../src/curl -q --include --trace-ascii log/10/trace1028 --trace-time http://127.0.0.1:36145/10280001 -L > log/10/stdout1028 2> log/10/stderr1028 Mismatch in --version: curl: curl-config: 8.8.0 CMD (256): /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/5/stdout1023 vernum 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/6/valgrind1029 ../src/curl -q --include --trace-ascii log/6/trace1029 --trace-time http://127.0.0.1:41583/we/want/our/1029 -w '%{redirect_url} %{url} %{exitcode} %{errormsg}\n' > log/6/stdout1029 2> log/6/stderr1029 1029: stdout FAILED: --- log/6/check-expected 2024-05-23 11:16:56.054460393 +0200 +++ log/6/check-generated 2024-05-23 11:16:56.054460393 +0200 @@ -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:41583/we/want/our/data/10290002.txt?coolsite=yes http://127.0.0.1:41583/we/want/our/1029 0 [LF] == Contents of files in the log/6/ 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:41583/we/want/our/data/10290002.txt?coolsite=yes http://127.0.0.1:41583/we/want/our/1029 0 [LF] === End of file check-expected === Start of file server.cmd Testnum 1029 === End of file server.cmd === Start of file valgrind1029 ==116316== ==116316== Process terminating with default action of signal 4 (SIGILL) ==116316== Illegal opcode at address 0x10B06D ==116316== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116316== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1029 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/2/valgrind1024 ../src/curl -q --output log/2/curl1024.out --include --trace-ascii log/2/trace1024 --trace-time http://127.0.0.1:44205/want/1024 -L -c log/2/jar1024 > log/2/stdout1024 2> log/2/stderr1024 1024: 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 1024 === Start of file server.cmd Testnum 1024 === End of file server.cmd === Start of file valgrind1024 ==116172== ==116172== Process terminating with default action of signal 4 (SIGILL) ==116172== Illegal opcode at address 0x10B06D ==116172== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116172== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1024 * 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/12/valgrind1027 ../src/curl -q --output log/12/curl1027.out --include --trace-ascii log/12/trace1027 --trace-time --help > log/12/stdout1027 2> log/12/stderr1027 postcheck 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/12/stdout1027 1027: postcheck FAILED == Contents of files in the log/12/ dir after test 1027 === Start of file server.cmd Testnum 1027 === End of file server.cmd === Start of file valgrind1027 ==116188== ==116188== Process terminating with default action of signal 4 (SIGILL) ==116188== Illegal opcode at address 0x10B06D ==116188== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116188== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1027 Mismatch in --version: curl: curl-config: 8.8.0 CMD (256): /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/7/stdout1022 version CMD (33792): ../libtool --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/valgrind1030 ../src/curl -q --output log/3/curl1030.out --include --trace-ascii log/3/trace1030 --trace-time http://127.0.0.1:46313/1030 -T log/3/put1030 -u testuser:testpass --anyauth > log/3/stdout1030 2> log/3/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/4/valgrind1031 ../src/curl -q --output log/4/curl1031.out --include --trace-ascii log/4/trace1031 --trace-time http://127.0.0.1:41947/want/this/1031 -L > log/4/stdout1031 2> log/4/stderr1031 CMD (33792): ../libtool --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/valgrind1009 ../src/curl -q --output log/11/curl1009.out --include --trace-ascii log/11/trace1009 --trace-time tftp://127.0.0.1:56117//1009 --local-port 44444-45444 > log/11/stdout1009 2> log/11/stderr1009 CMD (33792): ../libtool --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/valgrind1032 ../src/curl -q --output log/8/curl1032.out --include --trace-ascii log/8/trace1032 --trace-time --range 1-3 --head http://127.0.0.1:33791/1032 > log/8/stdout1032 2> log/8/stderr1032 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/10/valgrind1028 ../src/curl -q --include --trace-ascii log/10/trace1028 --trace-time http://127.0.0.1:36145/10280001 -L > log/10/stdout1028 2> log/10/stderr1028 1028: stdout FAILED: --- log/10/check-expected 2024-05-23 11:16:56.071127403 +0200 +++ log/10/check-generated 2024-05-23 11:16:56.071127403 +0200 @@ -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:33661/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/10/ 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:33661/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 server.cmd Testnum 1028 === End of file server.cmd === Start of file valgrind1028 ==116268== ==116268== Process terminating with default action of signal 4 (SIGILL) ==116268== Illegal opcode at address 0x10B06D ==116268== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116268== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1028 * 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/5/valgrind1023 ../src/curl -q --output log/5/curl1023.out --include --trace-ascii log/5/trace1023 --trace-time --version > log/5/stdout1023 2> log/5/stderr1023 postcheck /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/5/stdout1023 vernum 1023: postcheck FAILED == Contents of files in the log/5/ dir after test 1023 === Start of file server.cmd Testnum 1023 === End of file server.cmd === Start of file valgrind1023 ==116164== ==116164== Process terminating with default action of signal 4 (SIGILL) ==116164== Illegal opcode at address 0x10B06D ==116164== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116164== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1023 * 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/7/valgrind1022 ../src/curl -q --output log/7/curl1022.out --include --trace-ascii log/7/trace1022 --trace-time --version > log/7/stdout1022 2> log/7/stderr1022 postcheck /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/7/stdout1022 version 1022: postcheck FAILED == Contents of files in the log/7/ dir after test 1022 === Start of file server.cmd Testnum 1022 === End of file server.cmd === Start of file valgrind1022 ==116166== ==116166== Process terminating with default action of signal 4 (SIGILL) ==116166== Illegal opcode at address 0x10B06D ==116166== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116166== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1022 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/3/valgrind1030 ../src/curl -q --output log/3/curl1030.out --include --trace-ascii log/3/trace1030 --trace-time http://127.0.0.1:46313/1030 -T log/3/put1030 -u testuser:testpass --anyauth > log/3/stdout1030 2> log/3/stderr1030 1030: 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 1030 === 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 valgrind1030 ==116534== ==116534== Process terminating with default action of signal 4 (SIGILL) ==116534== Illegal opcode at address 0x10B06D ==116534== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116534== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1030 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/4/valgrind1031 ../src/curl -q --output log/4/curl1031.out --include --trace-ascii log/4/trace1031 --trace-time http://127.0.0.1:41947/want/this/1031 -L > log/4/stdout1031 2> log/4/stderr1031 1031: 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 1031 === Start of file server.cmd Testnum 1031 === End of file server.cmd === Start of file valgrind1031 ==116540== ==116540== Process terminating with default action of signal 4 (SIGILL) ==116540== Illegal opcode at address 0x10B06D ==116540== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116540== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1031 startnew: perl -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: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:56117/verifiedserver" 2>log/11/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 115544 port 56117 * pid tftp => 115544 115544 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/11/valgrind1009 ../src/curl -q --output log/11/curl1009.out --include --trace-ascii log/11/trace1009 --trace-time tftp://127.0.0.1:56117//1009 --local-port 44444-45444 > log/11/stdout1009 2> log/11/stderr1009 1009: 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 1009 === Start of file server.cmd Testnum 1009 === End of file server.cmd === Start of file tftp_server.log 11:16:54.067013 Wrote pid 115544 to log/11/server/tftp_server.pid 11:16:54.067064 Wrote port 56117 to log/11/server/tftp_server.port 11:16:54.067072 Running IPv4 version on port UDP/56117 11:16:55.078975 trying to get file: verifiedserver mode 1 11:16:55.078994 Are-we-friendly question received 11:16:55.079002 write 11:16:55.079023 read 11:16:55.086069 read: 4 11:16:55.086121 end of one transfer === End of file tftp_server.log === Start of file valgrind1009 ==116587== ==116587== Process terminating with default action of signal 4 (SIGILL) ==116587== Illegal opcode at address 0x10B06D ==116587== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116587== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1009 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/8/valgrind1032 ../src/curl -q --output log/8/curl1032.out --include --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/9/valgrind1033 ../src/curl -q --output log/9/curl1033.out --include --trace-ascii log/9/trace1033 --trace-time http://127.0.0.1:40247/1033 > log/9/stdout1033 2> log/9/stderr1033 CMD (33792): ../libtool --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/valgrind1034 ../src/curl -q --output log/1/curl1034.out --include --trace-ascii log/1/trace1034 --trace-time -K - -x 127.0.0.1:47 log/1/stdout1034 2> log/1/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/10/valgrind1038 ../src/curl -q --output log/10/curl1038.out --include --trace-ascii log/10/trace1038 --trace-time ftp://127.0.0.1:33661/1038 -T log/10/upload1038 -C - > log/10/stdout1038 2> log/10/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/6/valgrind1035 ../src/curl -q --output log/6/curl1035.out --include --trace-ascii log/6/trace1035 --trace-time http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 -x 127.0.0.1:47 > log/6/stdout1035 2> log/6/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/5/valgrind1039 ../src/curl -q --output log/5/curl1039.out --include --trace-ascii log/5/trace1039 --trace-time ftp://127.0.0.1:35155/1039 -T log/5/upload1039 -C - > log/5/stdout1039 2> log/5/stderr1039 CMD (33792): ../libtool --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/valgrind1037 ../src/curl -q --output log/12/curl1037.out --include --trace-ascii log/12/trace1037 --trace-time ftp://127.0.0.1:41005/1037 -C - > log/12/stdout1037 2> log/12/stderr1037 CMD (33792): ../libtool --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/valgrind1036 ../src/curl -q --output log/2/curl1036.out --include --trace-ascii log/2/trace1036 --trace-time ftp://127.0.0.1:42239/1036 -C - > log/2/stdout1036 2> log/2/stderr1036 ce-ascii log/8/trace1032 --trace-time --range 1-3 --head http://127.0.0.1:33791/1032 > log/8/stdout1032 2> log/8/stderr1032 1032: 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 1032 === Start of file server.cmd Testnum 1032 === End of file server.cmd === Start of file valgrind1032 ==116695== ==116695== Process terminating with default action of signal 4 (SIGILL) ==116695== Illegal opcode at address 0x10B06D ==116695== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116695== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1032 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/9/valgrind1033 ../src/curl -q --output log/9/curl1033.out --include --trace-ascii log/9/trace1033 --trace-time http://127.0.0.1:40247/1033 > log/9/stdout1033 2> log/9/stderr1033 1033: 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 1033 === Start of file server.cmd Testnum 1033 === End of file server.cmd === Start of file valgrind1033 ==116745== ==116745== Process terminating with default action of signal 4 (SIGILL) ==116745== Illegal opcode at address 0x10B06D ==116745== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116745== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1033 * starts no server setenv LC_ALL = setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/1/valgrind1034 ../src/curl -q --output log/1/curl1034.out --include --trace-ascii log/1/trace1034 --trace-time -K - -x 127.0.0.1:47 log/1/stdout1034 2> log/1/stderr1034 curl returned 132, when expecting 3 1034: exit FAILED == Contents of files in the log/1/ dir after test 1034 === 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 ==116787== ==116787== Process terminating with default action of signal 4 (SIGILL) ==116787== Illegal opcode at address 0x10B06D ==116787== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116787== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1034 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/10/valgrind1038 ../src/curl -q --output log/10/curl1038.out --include --trace-ascii log/10/trace1038 --trace-time ftp://127.0.0.1:33661/1038 -T log/10/upload1038 -C - > log/10/stdout1038 2> log/10/stderr1038 1038: 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 1038 === 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 ==116861== ==116861== Process terminating with default action of signal 4 (SIGILL) ==116861== Illegal opcode at address 0x10B06D ==116861== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116861== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1038 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/5/valgrind1039 ../src/curl -q --output log/5/curl1039.out --include --trace-ascii log/5/trace1039 --trace-time ftp://127.0.0.1:35155/1039 -T log/5/upload1039 -C - > log/5/stdout1039 2> log/5/stderr1039 1039: 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 1039 === 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 ==116864== ==116864== Process terminating with default action of signal 4 (SIGILL) ==116864== Illegal opcode at address 0x10B06D ==116864== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116864== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1039 * starts no server setenv LC_ALL = setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/6/valgrind1035 ../src/curl -q --output log/6/curl1035.out --include --trace-ascii log/6/trace1035 --trace-time http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 -x 127.0.0.1:47 > log/6/stdout1035 2> log/6/stderr1035 curl returned 132, when expecting 3 1035: exit FAILED == Contents of files in the log/6/ dir after test 1035 === Start of file server.cmd Testnum 1035 === End of file server.cmd === Start of file valgrind1035 ==116852== ==116852== Process terminating with default action of signal 4 (SIGILL) ==116852== Illegal opcode at address 0x10B06D ==116852== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116852== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1035 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/2/valgrind1036 ../src/curl -q --output log/2/curl1036.out --include --trace-ascii log/2/trace1036 --trace-time ftp://127.0.0.1:42239/1036 -C - > log/2/stdout1036 2> log/2/stderr1036 1036: 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 1036 === Start of file curl1036.out This is the start! === End of file curl1036.out === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1036 === End of file server.cmd === Start of file valgrind1036 ==116823== ==116823== Process terminating with default action of signal 4 (SIGILL) ==116823== Illegal opcode at address 0x10B06D ==116823== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116823== by 0x10B06D: 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/12/valgrind1037 ../src/curl -q --output log/12/curl1037.out --include --trace-ascii log/12/trace1037 --trace-time ftp://127.0.0.1:41005/1037 -C - > log/12/stdout1037 2> log/12/stderr1037 1037: 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 1037 === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1037 === End of file server.cmd === Start of file valgrind1037 ==116849== ==116849== CMD (33792): ../libtool --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/valgrind1040 ../src/curl -q --output log/7/curl1040.out --include --trace-ascii log/7/trace1040 --trace-time http://127.0.0.1:35853/1040 -C - > log/7/stdout1040 2> log/7/stderr1040 CMD (33792): ../libtool --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/valgrind1041 ../src/curl -q --output log/3/curl1041.out --include --trace-ascii log/3/trace1041 --trace-time http://127.0.0.1:46313/1041 -Tlog/3/test1041.txt -C - > log/3/stdout1041 2> log/3/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/4/valgrind1042 ../src/curl -q --output log/4/curl1042.out --include --trace-ascii log/4/trace1042 --trace-time http://127.0.0.1:41947/1042 -C 200 > log/4/stdout1042 2> log/4/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/11/valgrind1043 ../src/curl -q --output log/11/curl1043.out --include --trace-ascii log/11/trace1043 --trace-time http://127.0.0.1:35843/1043 -C - > log/11/stdout1043 2> log/11/stderr1043 CMD (33792): ../libtool --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/valgrind1044 ../src/curl -q --include --trace-ascii log/8/trace1044 --trace-time ftp://127.0.0.1:43509/blalbla/1044 -I > log/8/stdout1044 2> log/8/stderr1044 Process terminating with default action of signal 4 (SIGILL) ==116849== Illegal opcode at address 0x10B06D ==116849== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116849== by 0x10B06D: 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/7/valgrind1040 ../src/curl -q --output log/7/curl1040.out --include --trace-ascii log/7/trace1040 --trace-time http://127.0.0.1:35853/1040 -C - > log/7/stdout1040 2> log/7/stderr1040 1040: 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 1040 === Start of file curl1040.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1040.out === Start of file server.cmd Testnum 1040 === End of file server.cmd === Start of file valgrind1040 ==116892== ==116892== Process terminating with default action of signal 4 (SIGILL) ==116892== Illegal opcode at address 0x10B06D ==116892== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==116892== by 0x10B06D: 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/3/valgrind1041 ../src/curl -q --output log/3/curl1041.out --include --trace-ascii log/3/trace1041 --trace-time http://127.0.0.1:46313/1041 -Tlog/3/test1041.txt -C - > log/3/stdout1041 2> log/3/stderr1041 1041: 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 1041 === Start of file server.cmd Testnum 1041 === End of file server.cmd === Start of file test1041.txt 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file test1041.txt === Start of file valgrind1041 ==117052== ==117052== Process terminating with default action of signal 4 (SIGILL) ==117052== Illegal opcode at address 0x10B06D ==117052== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117052== by 0x10B06D: 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/4/valgrind1042 ../src/curl -q --output log/4/curl1042.out --include --trace-ascii log/4/trace1042 --trace-time http://127.0.0.1:41947/1042 -C 200 > log/4/stdout1042 2> log/4/stderr1042 1042: 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 1042 === Start of file curl1042.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1042.out === Start of file server.cmd Testnum 1042 === End of file server.cmd === Start of file valgrind1042 ==117170== ==117170== Process terminating with default action of signal 4 (SIGILL) ==117170== Illegal opcode at address 0x10B06D ==117170== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117170== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1042 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/11/valgrind1043 ../src/curl -q --output log/11/curl1043.out --include --trace-ascii log/11/trace1043 --trace-time http://127.0.0.1:35843/1043 -C - > log/11/stdout1043 2> log/11/stderr1043 1043: 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 1043 === Start of file curl1043.out 012345678 012345678 012345678 012345678 === End of file curl1043.out === Start of file server.cmd Testnum 1043 === End of file server.cmd === Start of file valgrind1043 ==117197== ==117197== Process terminating with default action of signal 4 (SIGILL) ==117197== Illegal opcode at address 0x10B06D ==117197== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117197== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1043 CMD (33792): ../libtool --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/valgrind1051 ../src/curl -q --output log/12/curl1051.out --include --trace-ascii log/12/trace1051 --trace-time http://127.0.0.1:44175/want/1051 -L -T log/12/test1051.txt > log/12/stdout1051 2> log/12/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/7/valgrind1052 ../src/curl -q --output log/7/curl1052.out --include --trace-ascii log/7/trace1052 --trace-time http://127.0.0.1:35853/want/1052 -0 -L -T log/7/test1052.txt > log/7/stdout1052 2> log/7/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/9/valgrind1045 ../src/curl -q --output log/9/curl1045.out --include --trace-ascii log/9/trace1045 --trace-time http://127.0.0.1:40247/1045 --interface 127.0.0.1 > log/9/stdout1045 2> log/9/stderr1045 CMD (33792): ../libtool --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/valgrind1047 ../src/curl -q --output log/10/curl1047.out --include --trace-ascii log/10/trace1047 --trace-time ftp://127.0.0.1:33661/ --interface 127.0.0.1 > log/10/stdout1047 2> log/10/stderr1047 CMD (33792): ../libtool --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/valgrind1053 ../src/curl -q --output log/3/curl1053.out --include --trace-ascii log/3/trace1053 --trace-time http://127.0.0.1:46313/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/3/test1053.txt > log/3/stdout1053 2> log/3/stderr1053 CMD (33792): ../libtool --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/valgrind1054 ../src/curl -q --output log/4/curl1054.out --include --trace-ascii log/4/trace1054 --trace-time http://127.0.0.1:41947/blah/1054 -L -d @log/4/test1054.txt --post301 > log/4/stdout1054 2> log/4/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/11/valgrind1055 ../src/curl -q --output log/11/curl1055.out --include --trace-ascii log/11/trace1055 --trace-time http://127.0.0.1:35843/1055 -L -T log/11/test1055.txt > log/11/stdout1055 2> log/11/stderr1055 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/8/valgrind1044 ../src/curl -q --include --trace-ascii log/8/trace1044 --trace-time ftp://127.0.0.1:43509/blalbla/1044 -I > log/8/stdout1044 2> log/8/stderr1044 1044: stdout FAILED: --- log/8/check-expected 2024-05-23 11:16:57.027813716 +0200 +++ log/8/check-generated 2024-05-23 11:16:57.027813716 +0200 @@ -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/8/ 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 server.cmd Testnum 1044 === End of file server.cmd === Start of file valgrind1044 ==117311== ==117311== Process terminating with default action of signal 4 (SIGILL) ==117311== Illegal opcode at address 0x10B06D ==117311== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117311== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1044 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/12/valgrind1051 ../src/curl -q --output log/12/curl1051.out --include --trace-ascii log/12/trace1051 --trace-time http://127.0.0.1:44175/want/1051 -L -T log/12/test1051.txt > log/12/stdout1051 2> log/12/stderr1051 1051: 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 1051 === Start of file server.cmd Testnum 1051 === End of file server.cmd === Start of file test1051.txt Weird file to upload for testing the PUT feature === End of file test1051.txt === Start of file valgrind1051 ==117434== ==117434== Process terminating with default action of signal 4 (SIGILL) ==117434== Illegal opcode at address 0x10B06D ==117434== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117434== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1051 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/9/valgrind1045 ../src/curl -q --output log/9/curl1045.out --include --trace-ascii log/9/trace1045 --trace-time http://127.0.0.1:40247/1045 --interface 127.0.0.1 > log/9/stdout1045 2> log/9/stderr1045 1045: 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 1045 === Start of file server.cmd Testnum 1045 === End of file server.cmd === Start of file valgrind1045 ==117358== ==117358== Process terminating with default action of signal 4 (SIGILL) ==117358== Illegal opcode at address 0x10B06D ==117358== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117358== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1045 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/7/valgrind1052 ../src/curl -q --output log/7/curl1052.out --include --trace-ascii log/7/trace1052 --trace-time http://127.0.0.1:35853/want/1052 -0 -L -T log/7/test1052.txt > log/7/stdout1052 2> log/7/stderr1052 1052: 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 1052 === Start of file server.cmd Testnum 1052 === End of file server.cmd === Start of file test1052.txt Weird file to upload for testing the PUT feature === End of file test1052.txt === Start of file valgrind1052 ==117430== ==117430== Process terminating with default action of signal 4 (SIGILL) ==117430== Illegal opcode at address 0x10B06D ==117430== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117430== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1052 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/10/valgrind1047 ../src/curl -q --output log/10/curl1047.out --include --trace-ascii log/10/trace1047 --trace-time ftp://127.0.0.1:33661/ --interface 127.0.0.1 > log/10/stdout1047 2> log/10/stderr1047 1047: 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 1047 === Start of file server.cmd Testnum 1047 === End of file server.cmd === Start of file valgrind1047 ==117410== ==117410== Process terminating with default action of signal 4 (SIGILL) ==117410== Illegal opcode at address 0x10B06D ==117410== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117410== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1047 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/3/valgrind1053 ../src/curl -q --output log/3/curl1053.out --include --trace-ascii log/3/trace1053 --trace-time http://127.0.0.1:46313/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/3/test1053.txt > log/3/stdout1053 2> log/3/stderr1053 1053: 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 1053 === Start of file server.cmd Testnum 1053 === End of file server.cmd === Start of file test1053.txt foo- This is a moo- bar === End of file test1053.txt === Start of file valgrind1053 ==117564== ==117564== Process terminating with default action of signal 4 (SIGILL) ==117564== Illegal opcode at address 0x10B06D ==117564== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117564== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1053 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/4/valgrind1054 ../src/curl -q --output log/4/curl1054.out --include --trace-ascii log/4/trace1054 --trace-time http://127.0.0.1:41947/blah/1054 -L -d @log/4/test1054.txt --post301 > log/4/stdout1054 2> log/4/stderr1054 1054: 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 1054 === Start of file server.cmd Testnum 1054 === End of file server.cmd === Start of file test1054.txt field=data === End of file test1054.txt === Start of file valgrind1054 ==117565== ==117565== Process terminating with default action of signal 4 (SIGILL) ==117565== Illegal opcode at address 0x10B06D ==117565== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117565== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1054 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/11/valgrind1055 ../src/curl -q --output log/11/curl1055.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/valgrind1057 ../src/curl -q --output log/12/curl1057.out --include --trace-ascii log/12/trace1057 --trace-time -r -12 ftp://127.0.0.1:41005/1057 > log/12/stdout1057 2> log/12/stderr1057 CMD (0): ../src/curl --max-time 13 --output log/1/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:46787/verifiedserver" 2>log/1/http_ipv6_verify.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/7/valgrind1059 ../src/curl -q --output log/7/curl1059.out --include --trace-ascii log/7/trace1059 --trace-time ftp://test-number:1059/wanted/page -p -x 127.0.0.1:35853 > log/7/stdout1059 2> log/7/stderr1059 CMD (33792): ../libtool --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/valgrind1063 ../src/curl -q --output log/11/curl1063.out --include --trace-ascii log/11/trace1063 --trace-time -r 4294967303- file://localhost/startdir/src/build-curl/tests/log/11/test1063.txt > log/11/stdout1063 2> log/11/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/9/valgrind1058 ../src/curl -q --output log/9/curl1058.out --include --trace-ascii log/9/trace1058 --trace-time http://127.0.0.1:40247/want/1058 -r -101 > log/9/stdout1058 2> log/9/stderr1058 CMD (33792): ../libtool --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/valgrind1060 ../src/curl -q --output log/10/curl1060.out --include --trace-ascii log/10/trace1060 --trace-time http://test.remote.haxx.se.1060:8990/path/10600002 --proxy http://127.0.0.1:36145 --proxy-user silly:person --proxy-digest --proxytunnel > log/10/stdout1060 2> log/10/stderr1060 CMD (33792): ../libtool --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/valgrind1062 ../src/curl -q --output log/4/curl1062.out --include --trace-ascii log/4/trace1062 --trace-time ftp://127.0.0.1:36137/path/1062 > log/4/stdout1062 2> log/4/stderr1062 log/11/trace1055 --trace-time http://127.0.0.1:35843/1055 -L -T log/11/test1055.txt > log/11/stdout1055 2> log/11/stderr1055 1055: 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 1055 === Start of file server.cmd Testnum 1055 === End of file server.cmd === Start of file test1055.txt Weird file to upload for testing the PUT feature === End of file test1055.txt === Start of file valgrind1055 ==117655== ==117655== Process terminating with default action of signal 4 (SIGILL) ==117655== Illegal opcode at address 0x10B06D ==117655== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117655== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1055 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/12/valgrind1057 ../src/curl -q --output log/12/curl1057.out --include --trace-ascii log/12/trace1057 --trace-time -r -12 ftp://127.0.0.1:41005/1057 > log/12/stdout1057 2> log/12/stderr1057 1057: 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 1057 === Start of file server.cmd Testnum 1057 === End of file server.cmd === Start of file valgrind1057 ==117724== ==117724== Process terminating with default action of signal 4 (SIGILL) ==117724== Illegal opcode at address 0x10B06D ==117724== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117724== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1057 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/7/valgrind1059 ../src/curl -q --output log/7/curl1059.out --include --trace-ascii log/7/trace1059 --trace-time ftp://test-number:1059/wanted/page -p -x 127.0.0.1:35853 > log/7/stdout1059 2> log/7/stderr1059 1059: 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 1059 === Start of file server.cmd Testnum 1059 === End of file server.cmd === Start of file valgrind1059 ==117725== ==117725== Process terminating with default action of signal 4 (SIGILL) ==117725== Illegal opcode at address 0x10B06D ==117725== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117725== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1059 * 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/11/valgrind1063 ../src/curl -q --output log/11/curl1063.out --include --trace-ascii log/11/trace1063 --trace-time -r 4294967303- file://localhost/startdir/src/build-curl/tests/log/11/test1063.txt > log/11/stdout1063 2> log/11/stderr1063 curl returned 132, when expecting 36 1063: exit FAILED == Contents of files in the log/11/ dir after test 1063 === 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 ==117864== ==117864== Process terminating with default action of signal 4 (SIGILL) ==117864== Illegal opcode at address 0x10B06D ==117864== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117864== by 0x10B06D: 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/9/valgrind1058 ../src/curl -q --output log/9/curl1058.out --include --trace-ascii log/9/trace1058 --trace-time http://127.0.0.1:40247/want/1058 -r -101 > log/9/stdout1058 2> log/9/stderr1058 1058: 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 1058 === Start of file server.cmd Testnum 1058 === End of file server.cmd === Start of file valgrind1058 ==117723== ==117723== Process terminating with default action of signal 4 (SIGILL) ==117723== Illegal opcode at address 0x10B06D ==117723== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117723== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1058 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/10/valgrind1060 ../src/curl -q --output log/10/curl1060.out --include --trace-ascii log/10/trace1060 --trace-time http://test.remote.haxx.se.1060:8990/path/10600002 --proxy http://127.0.0.1:36145 --proxy-user silly:person --proxy-digest --proxytunnel > log/10/stdout1060 2> log/10/stderr1060 1060: 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 1060 === Start of file server.cmd Testnum 1060 === End of file server.cmd === Start of file valgrind1060 ==117894== ==117894== Process terminating with default action of signal 4 (SIGILL) ==117894== Illegal opcode at address 0x10B06D ==117894== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117894== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1060 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/4/valgrind1062 ../src/curl -q --output log/4/curl1062.out --include --trace-ascii log/4/trace1062 --trace-time ftp://127.0.0.1:36137/path/1062 > log/4/stdout1062 2> log/4/stderr1062 1062: 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 1062 === 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-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMD (33792): ../libtool --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/valgrind1061 ../src/curl -q --output log/3/curl1061.out --include --trace-ascii log/3/trace1061 --trace-time http://test.remote.haxx.se.1061:8990/path/10610002 --proxy http://127.0.0.1:46313 --proxy-user silly:person --proxy-digest --proxytunnel > log/3/stdout1061 2> log/3/stderr1061 AAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-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 ==117865== ==117865== Process terminating with default action of signal 4 (SIGILL) ==117865== Illegal opcode at address 0x10B06D ==117865== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==117865== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1062 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/3/valgrind1061 ../src/curl -q --output log/3/curl1061.out --include --trace-ascii log/3/trace1061 --trace-time http://test.remote.haxx.se.1061:8990/path/10610002 --proxy http://127.0.0.1:46313 --proxy-user silly:person --proxy-digest --proxytunnel > log/3/stdout1061 2> log/3/stderr1061 1061: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitCMD (0): ../src/curl --max-time 13 --output log/8/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:34451/verifiedserver" 2>log/8/http_ipv6_verify.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/12/valgrind1064 ../src/curl -q --include --trace-ascii log/12/trace1064 --trace-time -H "Expect:" -T log/12/1064 http://127.0.0.1:44175/1064.upload1 -T log/12/1064 http://127.0.0.1:44175/10640002.upload2 > log/12/stdout1064 2> log/12/stderr1064 ch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1061 === Start of file server.cmd Testnum 1061 === End of file server.cmd === Start of file valgrind1061 ==118007== ==118007== Process terminating with default action of signal 4 (SIGILL) ==118007== Illegal opcode at address 0x10B06D ==118007== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118007== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1061 CMD (33792): ../libtool --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-time -H "Expect:" -T log/7/1065 http://127.0.0.1:35853/1065.upload1 http://127.0.0.1:35853/10650002.url2 > log/7/stdout1065 2> log/7/stderr1065 CMD (33792): ../libtool --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/valgrind1046 ../src/curl -q --output log/1/curl1046.out --include --trace-ascii log/1/trace1046 --trace-time -g "http://[::1]:46787/1046" --interface ::1 > log/1/stdout1046 2> log/1/stderr1046 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/12/valgrind1064 ../src/curl -q --include --trace-ascii log/12/trace1064 --trace-time -H "Expect:" -T log/12/1064 http://127.0.0.1:44175/1064.upload1 -T log/12/1064 http://127.0.0.1:44175/10640002.upload2 > log/12/stdout1064 2> log/12/stderr1064 1064: stdout FAILED: --- log/12/check-expected 2024-05-23 11:16:58.277839388 +0200 +++ log/12/check-generated 2024-05-23 11:16:58.277839388 +0200 @@ -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/12/ 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 server.cmd Testnum 1064 === End of file server.cmd === Start of file valgrind1064 ==118079== ==118079== Process terminating with default action of signal 4 (SIGILL) ==118079== Illegal opcode at address 0x10B06D ==118079== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118079== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1064 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/1/server/http_ipv6_server.pid" --logfile "log/1/http_ipv6_server.log" --logdir "log/1" --portfile log/1/server/http_ipv6_server.port --config log/1/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/1/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:46787/verifiedserver" 2>log/1/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 117356 port 46787 * pid http-ipv6 => 117356 117356 prechecked /usr/bin/perl -e "print 'Test requires default test client host address' if ( '[::1]' ne '[::1]' );" 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/1/valgrind1046 ../src/curl -q --output log/1/curl1046.out --include --trace-ascii log/1/trace1046 --trace-time -g "http://[::1]:46787/1046" --interface ::1 > log/1/stdout1046 2> log/1/stderr1046 1046: 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 1046 === Start of file http_ipv6_server.log 11:16:56.176112 Running HTTP IPv6 version on port 46787 11:16:56.176194 Wrote pid 117356 to log/1/server/http_ipv6_server.pid 11:16:56.176217 Wrote port 46787 to log/1/server/http_ipv6_server.port 11:16:57.177145 ====> Client connect 11:16:57.177161 accept_connection 3 returned 4 11:16:57.177170 accept_connection 3 returned 0 11:16:57.177178 Read 88 bytes 11:16:57.177184 Process 88 bytes request 11:16:57.177199 Got request: GET /verifiedserver HTTP/1.1 11:16:57.177204 Are-we-friendly question received 11:16:57.177218 Wrote request (88 bytes) input to log/1/server.input 11:16:57.177232 Identifying ourselves as friends 11:16:57.177274 Response sent (57 bytes) and written to log/1/server.response 11:16:57.177281 special request received, no persistency 11:16:57.177286 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:46787... * Connected to ::1 (::1) port 46787 > GET /verifiedserver HTTP/1.1 > Host: [::1]:46787 > User-Agent: curl/8.8.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: 117356 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 1046 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 117356 === End of file server.response === Start of file valgrind1046 ==118089== ==118089== Process terminating with default action of signal 4 (SIGILL) ==118089== Illegal opcode at address 0x10B06D ==118089== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118089== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1046 CMD (33792): ../libtool --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/valgrind1066 ../src/curl -q --include --trace-ascii log/11/trace1066 --trace-time http://127.0.0.1:35843/want/1066 http://127.0.0.1:35843/want/10660001 --dump-header - > log/11/stdout1066 2> log/11/stderr1066 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-time -H "Expect:" -T log/7/1065 http://127.0.0.1:35853/1065.upload1 http://127.0.0.1:35853/10650002.url2 > log/7/stdout1065 2> log/7/stderr1065 1065: stdout FAILED: --- log/7/check-expected 2024-05-23 11:16:58.291172995 +0200 +++ log/7/check-generated 2024-05-23 11:16:58.291172995 +0200 @@ -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 server.cmd Testnum 1065 === End of file server.cmd === Start of file valgrind1065 ==118113== ==118113== Process terminating with default action of signal 4 (SIGILL) ==118113== Illegal opcode at address 0x10B06D ==118113== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118113== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1065 CMD (33792): ../libtool --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/valgrind1067 ../src/curl -q --output log/9/curl1067.out --include --trace-ascii log/9/trace1067 --trace-time http://127.0.0.1:40247/want/1067 --silent --location --referer "firstone.html;auto" --write-out "%{stderr}|%{referer}|" > log/9/stdout1067 2> log/9/stderr1067 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/11/valgrind1066 ../src/curl -q --include --trace-ascii log/11/trace1066 --trace-time http://127.0.0.1:35843/want/1066 http://127.0.0.1:35843/want/10660001 --dump-header - > log/11/stdout1066 2> log/11/stderr1066 1066: stdout FAILED: --- log/11/check-expected 2024-05-23 11:16:58.297839800 +0200 +++ log/11/check-generated 2024-05-23 11:16:58.297839800 +0200 @@ -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/11/ 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 server.cmd Testnum 1066 === End of file server.cmd === Start of file valgrind1066 ==118116== ==118116== Process terminating with default action of signal 4 (SIGILL) ==118116== Illegal opcode at address 0x10B06D ==118116== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118116== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1066 CMD (33792): ../libtool --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/valgrind1068 ../src/curl -q --output log/10/curl1068.out --include --trace-ascii log/10/trace1068 --trace-time http://127.0.0.1:36145/bzz/1068 -T - log/10/stdout1068 2> log/10/stderr1068 CMD (33792): ../libtool --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/valgrind1069 ../src/curl -q --output log/4/curl1069.out --include --trace-ascii log/4/trace1069 --trace-time http://127.0.0.1:41947/bzz/1069 -T - -0 log/4/stdout1069 2> log/4/stderr1069 CMD (33792): ../libtool --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/valgrind1049 ../src/curl -q --output log/6/curl1049.out --include --trace-ascii log/6/trace1049 --trace-time tftp://127.0.0.1:60231//1049 --interface 127.0.0.1 > log/6/stdout1049 2> log/6/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/2/valgrind1050 ../src/curl -q --output log/2/curl1050.out --include --trace-ascii log/2/trace1050 --trace-time -g "ftp://[::1]:42989/" -P ::1 > log/2/stdout1050 2> log/2/stderr1050 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/9/valgrind1067 ../src/curl -q --output log/9/curl1067.out --include --trace-ascii log/9/trace1067 --trace-time http://127.0.0.1:40247/want/1067 --silent --location --referer "firstone.html;auto" --write-out "%{stderr}|%{referer}|" > log/9/stdout1067 2> log/9/stderr1067 1067: stderr FAILED: --- log/9/check-expected 2024-05-23 11:16:58.304506603 +0200 +++ log/9/check-generated 2024-05-23 11:16:58.304506603 +0200 @@ -1 +0,0 @@ -|http://127.0.0.1:40247/want/1067| == Contents of files in the log/9/ dir after test 1067 === Start of file check-expected |http://127.0.0.1:40247/want/1067| === End of file check-expected === Start of file server.cmd Testnum 1067 === End of file server.cmd === Start of file valgrind1067 ==118156== ==118156== Process terminating with default action of signal 4 (SIGILL) ==118156== Illegal opcode at address 0x10B06D ==118156== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118156== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1067 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/10/valgrind1068 ../src/curl -q --output log/10/curl1068.out --include --trace-ascii log/10/trace1068 --trace-time http://127.0.0.1:36145/bzz/1068 -T - log/10/stdout1068 2> log/10/stderr1068 1068: 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 1068 === Start of file server.cmd Testnum 1068 === End of file server.cmd === Start of file stdin-for-1068 more than one byte === End of file stdin-for-1068 === Start of file valgrind1068 ==118231== ==118231== Process terminating with default action of signal 4 (SIGILL) ==118231== Illegal opcode at address 0x10B06D ==118231== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118231== by 0x10B06D: 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/4/valgrind1069 ../src/curl -q --output log/4/curl1069.out --include --trace-ascii log/4/trace1069 --trace-time http://127.0.0.1:41947/bzz/1069 -T - -0 log/4/stdout1069 2> log/4/stderr1069 curl returned 132, when expecting 25 1069: exit FAILED == Contents of files in the log/4/ dir after test 1069 === Start of file server.cmd Testnum 1069 === End of file server.cmd === Start of file stdin-for-1069 this data can't be sent === End of file stdin-for-1069 === Start of file valgrind1069 ==118427== ==118427== Process terminating with default action of signal 4 (SIGILL) ==118427== Illegal opcode at address 0x10B06D ==118427== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118427== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1069 startnew: perl -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: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:60231/verifiedserver" 2>log/6/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 117409 port 60231 * pid tftp => 117409 117409 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/6/valgrind1049 ../src/curl -q --output log/6/curl1049.out --include --trace-ascii log/6/trace1049 --trace-time tftp://127.0.0.1:60231//1049 --interface 127.0.0.1 > log/6/stdout1049 2> log/6/stderr1049 1049: 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 1049 === Start of file server.cmd Testnum 1049 === End of file server.cmd === Start of file tftp_server.log 11:16:56.242583 Wrote pid 117409 to log/6/server/tftp_server.pid 11:16:56.242624 Wrote port 60231 to log/6/server/tftp_server.port 11:16:56.242630 Running IPv4 version on port UDP/60231 11:16:57.251878 trying to get file: verifiedserver mode 1 11:16:57.251892 Are-we-friendly question received 11:16:57.251901 write 11:16:57.251917 read 11:16:57.252418 read: 4 11:16:57.252445 end of one transfer === End of file tftp_server.log === Start of file valgrind1049 ==118426== ==118426== Process terminating with default action of signal 4 (SIGILL) ==118426== Illegal opcode at address 0x10B06D ==118426== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118426== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1049 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/2/server/ftp_ipv6_server.pid" --logfile "log/2/ftp_ipv6_server.log" --logdir "log/2" --portfile "log/2/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 42989 (log/2/server/ftp_ipv6_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://[::1]:42989/verifiedserver" 2>log/2/ftp_ipv6_verify.log RUN: Verifying our test ftp-ipv6 server took 0 seconds RUN: FTP-IPv6 server is PID 117406 port 42989 * pid ftp-ipv6 => 117406 117406 prechecked /usr/bin/perl -e "print 'Test requires default test client host address' if ( '[::1]' ne '[::1]' );" 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/2/valgrind1050 ../src/curl -q --output log/2/curl1050.out --include --trace-ascii log/2/trace1050 --trace-time -g "ftp://[::1]:42989/" -P ::1 > log/2/stdout1050 2> log/2/stderr1050 1050: 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 1050 === Start of file ftp_ipv6_server.log 11:16:56.741047 FTP server listens on port IPv6/42989 11:16:56.741124 logged pid 117406 in log/2/server/ftp_ipv6_server.pid 11:16:56.741146 Awaiting input 11:16:57.729392 ====> Client connect 11:16:57.729516 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:57.729742 < "USER anonymous" 11:16:57.729771 > "331 We are happy you popped in![CR][LF]" 11:16:57.729896 < "PASS ftp@example.com" 11:16:57.729917 > "230 Welcome you silly person[CR][LF]" 11:16:57.730055 < "PWD" 11:16:57.730078 > "257 "/" is current directory[CR][LF]" 11:16:57.730203 < "EPSV" 11:16:57.730224 ====> Passive DATA channel requested by client 11:16:57.730234 DATA sockfilt for passive data channel starting... 11:16:57.731575 DATA sockfilt for passive data channel started (pid 118421) 11:16:57.731657 DATA sockfilt for passive data channel listens on port 33613 11:16:57.731692 > "229 Entering Passive Mode (|||33613|)[LF]" 11:16:57.731705 Client has been notified that DATA conn will be accepted on port 33613 11:16:57.731874 Client connects to port 33613 11:16:57.731898 ====> Client established passive DATA connection on port 33613 11:16:57.731976 < "TYPE I" 11:16:57.731996 > "200 I modify TYPE as you wanted[CR][LF]" 11:16:57.732189 < "SIZE verifiedserver" 11:16:57.732220 > "213 18[CR][LF]" 11:16:57.732355 < "RETR 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/3/valgrind1070 ../src/curl -q --output log/3/curl1070.out --include --trace-ascii log/3/trace1070 --trace-time -d @log/3/input1070 http://127.0.0.1:46313/1070 -H "Expect: 100-continue" > log/3/stdout1070 2> log/3/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/5/valgrind1048 ../src/curl -q --output log/5/curl1048.out --include --trace-ascii log/5/trace1048 --trace-time -g "ftp://[::1]:34515/" --interface ::1 > log/5/stdout1048 2> log/5/stderr1048 server" 11:16:57.732391 > "150 Binary junk (18 bytes).[CR][LF]" 11:16:57.732456 =====> Closing passive DATA connection... 11:16:57.732469 Server disconnects passive DATA connection 11:16:57.733292 Server disconnected passive DATA connection 11:16:57.733322 DATA sockfilt for passive data channel quits (pid 118421) 11:16:57.733492 DATA sockfilt for passive data channel quit (pid 118421) 11:16:57.733507 =====> Closed passive DATA connection 11:16:57.733528 > "226 File transfer complete[CR][LF]" 11:16:57.775728 < "QUIT" 11:16:57.775775 > "221 bye bye baby[CR][LF]" 11:16:57.776694 MAIN sockfilt said DISC 11:16:57.776719 ====> Client disconnected 11:16:57.776761 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 11:16:56.258067 Running IPv6 version 11:16:56.258134 Listening on port 42989 11:16:56.258162 Wrote pid 117491 to log/2/server/ftp_ipv6_sockctrl.pid 11:16:56.258184 Wrote port 42989 to log/2/server/ftp_ipv6_server.port 11:16:56.258301 Received PING (on stdin) 11:16:57.246653 ====> Client connect 11:16:57.246848 Received DATA (on stdin) 11:16:57.246858 > 160 bytes data, server => client 11:16:57.246867 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:57.246876 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:57.246884 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:57.246942 < 16 bytes data, client => server 11:16:57.246951 'USER anonymous\r\n' 11:16:57.247097 Received DATA (on stdin) 11:16:57.247106 > 33 bytes data, server => client 11:16:57.247114 '331 We are happy you popped in!\r\n' 11:16:57.247156 < 22 bytes data, client => server 11:16:57.247164 'PASS ftp@example.com\r\n' 11:16:57.247242 Received DATA (on stdin) 11:16:57.247250 > 30 bytes data, server => client 11:16:57.247258 '230 Welcome you silly person\r\n' 11:16:57.247302 < 5 bytes data, client => server 11:16:57.247309 'PWD\r\n' 11:16:57.247402 Received DATA (on stdin) 11:16:57.247411 > 30 bytes data, server => client 11:16:57.247419 '257 "/" is current directory\r\n' 11:16:57.247467 < 6 bytes data, client => server 11:16:57.247475 'EPSV\r\n' 11:16:57.249033 Received DATA (on stdin) 11:16:57.249044 > 38 bytes data, server => client 11:16:57.249053 '229 Entering Passive Mode (|||33613|)\n' 11:16:57.249231 < 8 bytes data, client => server 11:16:57.249240 'TYPE I\r\n' 11:16:57.249319 Received DATA (on stdin) 11:16:57.249328 > 33 bytes data, server => client 11:16:57.249335 '200 I modify TYPE as you wanted\r\n' 11:16:57.249384 < 21 bytes data, client => server 11:16:57.249526 'SIZE verifiedserver\r\n' 11:16:57.249543 Received DATA (on stdin) 11:16:57.249551 > 8 bytes data, server => client 11:16:57.249558 '213 18\r\n' 11:16:57.249611 < 21 bytes data, client => server 11:16:57.249619 'RETR verifiedserver\r\n' 11:16:57.249727 Received DATA (on stdin) 11:16:57.249737 > 29 bytes data, server => client 11:16:57.249745 '150 Binary junk (18 bytes).\r\n' 11:16:57.250839 Received DATA (on stdin) 11:16:57.250852 > 28 bytes data, server => client 11:16:57.250860 '226 File transfer complete\r\n' 11:16:57.292943 < 6 bytes data, client => server 11:16:57.292965 'QUIT\r\n' 11:16:57.293106 Received DATA (on stdin) 11:16:57.293117 > 18 bytes data, server => client 11:16:57.293126 '221 bye bye baby\r\n' 11:16:57.293819 ====> Client disconnect 11:16:57.294087 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 11:16:57.248663 Running IPv6 version 11:16:57.248716 Listening on port 33613 11:16:57.248743 Wrote pid 118421 to log/2/server/ftp_ipv6_sockdata.pid 11:16:57.248856 Received PING (on stdin) 11:16:57.248917 Received PORT (on stdin) 11:16:57.249158 ====> Client connect 11:16:57.249811 Received DATA (on stdin) 11:16:57.249823 > 18 bytes data, server => client 11:16:57.249831 'WE ROOLZ: 117406\r\n' 11:16:57.249863 Received DISC (on stdin) 11:16:57.249872 ====> Client forcibly disconnected 11:16:57.250658 Received QUIT (on stdin) 11:16:57.250673 quits 11:16:57.250705 ============> 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 ==118537== ==118537== Process terminating with default action of signal 4 (SIGILL) ==118537== Illegal opcode at address 0x10B06D ==118537== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118537== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1050 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/3/valgrind1070 ../src/curl -q --output log/3/curl1070.out --include --trace-ascii log/3/trace1070 --trace-time -d @log/3/input1070 http://127.0.0.1:46313/1070 -H "Expect: 100-continue" > log/3/stdout1070 2> log/3/stderr1070 1070: 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 1070 === 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 valgrind1070 ==118520== ==118520== Process terminating with default action of signal 4 (SIGILL) ==118520== Illegal opcode at address 0x10B06D ==118520== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118520== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1070 startnew: perl -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" --portfileCMD (33792): ../libtool --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-time http://127.0.0.1:33791/we/are/all/twits/1056 -L > log/8/stdout1056 2> log/8/stderr1056 "log/5/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 34515 (log/5/server/ftp_ipv6_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://[::1]:34515/verifiedserver" 2>log/5/ftp_ipv6_verify.log RUN: Verifying our test ftp-ipv6 server took 0 seconds RUN: FTP-IPv6 server is PID 117407 port 34515 * pid ftp-ipv6 => 117407 117407 prechecked /usr/bin/perl -e "print 'Test requires default test client host address' if ( '[::1]' ne '[::1]' );" 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/5/valgrind1048 ../src/curl -q --output log/5/curl1048.out --include --trace-ascii log/5/trace1048 --trace-time -g "ftp://[::1]:34515/" --interface ::1 > log/5/stdout1048 2> log/5/stderr1048 1048: 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 1048 === Start of file ftp_ipv6_server.log 11:16:56.742257 FTP server listens on port IPv6/34515 11:16:56.742340 logged pid 117407 in log/5/server/ftp_ipv6_server.pid 11:16:56.742361 Awaiting input 11:16:57.729006 ====> Client connect 11:16:57.729141 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:16:57.729387 < "USER anonymous" 11:16:57.729416 > "331 We are happy you popped in![CR][LF]" 11:16:57.729539 < "PASS ftp@example.com" 11:16:57.729557 > "230 Welcome you silly person[CR][LF]" 11:16:57.729673 < "PWD" 11:16:57.729696 > "257 "/" is current directory[CR][LF]" 11:16:57.729816 < "EPSV" 11:16:57.729837 ====> Passive DATA channel requested by client 11:16:57.729847 DATA sockfilt for passive data channel starting... 11:16:57.731105 DATA sockfilt for passive data channel started (pid 118420) 11:16:57.731185 DATA sockfilt for passive data channel listens on port 42991 11:16:57.731216 > "229 Entering Passive Mode (|||42991|)[LF]" 11:16:57.731228 Client has been notified that DATA conn will be accepted on port 42991 11:16:57.731388 Client connects to port 42991 11:16:57.731409 ====> Client established passive DATA connection on port 42991 11:16:57.731458 < "TYPE I" 11:16:57.731478 > "200 I modify TYPE as you wanted[CR][LF]" 11:16:57.731595 < "SIZE verifiedserver" 11:16:57.731621 > "213 18[CR][LF]" 11:16:57.731728 < "RETR verifiedserver" 11:16:57.731753 > "150 Binary junk (18 bytes).[CR][LF]" 11:16:57.731815 =====> Closing passive DATA connection... 11:16:57.731827 Server disconnects passive DATA connection 11:16:57.731939 Server disconnected passive DATA connection 11:16:57.731964 DATA sockfilt for passive data channel quits (pid 118420) 11:16:57.732312 DATA sockfilt for passive data channel quit (pid 118420) 11:16:57.732336 =====> Closed passive DATA connection 11:16:57.732359 > "226 File transfer complete[CR][LF]" 11:16:57.772461 < "QUIT" 11:16:57.772506 > "221 bye bye baby[CR][LF]" 11:16:57.773304 MAIN sockfilt said DISC 11:16:57.773337 ====> Client disconnected 11:16:57.773376 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 11:16:56.259258 Running IPv6 version 11:16:56.259317 Listening on port 34515 11:16:56.259349 Wrote pid 117496 to log/5/server/ftp_ipv6_sockctrl.pid 11:16:56.259372 Wrote port 34515 to log/5/server/ftp_ipv6_server.port 11:16:56.259506 Received PING (on stdin) 11:16:57.246258 ====> Client connect 11:16:57.246475 Received DATA (on stdin) 11:16:57.246485 > 160 bytes data, server => client 11:16:57.246494 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:16:57.246505 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:16:57.246513 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:16:57.246580 < 16 bytes data, client => server 11:16:57.246589 'USER anonymous\r\n' 11:16:57.246743 Received DATA (on stdin) 11:16:57.246752 > 33 bytes data, server => client 11:16:57.246761 '331 We are happy you popped in!\r\n' 11:16:57.246803 < 22 bytes data, client => server 11:16:57.246811 'PASS ftp@example.com\r\n' 11:16:57.246883 Received DATA (on stdin) 11:16:57.246892 > 30 bytes data, server => client 11:16:57.246900 '230 Welcome you silly person\r\n' 11:16:57.246938 < 5 bytes data, client => server 11:16:57.246946 'PWD\r\n' 11:16:57.247019 Received DATA (on stdin) 11:16:57.247027 > 30 bytes data, server => client 11:16:57.247035 '257 "/" is current directory\r\n' 11:16:57.247079 < 6 bytes data, client => server 11:16:57.247088 'EPSV\r\n' 11:16:57.248558 Received DATA (on stdin) 11:16:57.248568 > 38 bytes data, server => client 11:16:57.248576 '229 Entering Passive Mode (|||42991|)\n' 11:16:57.248703 < 8 bytes data, client => server 11:16:57.248719 'TYPE I\r\n' 11:16:57.248802 Received DATA (on stdin) 11:16:57.248812 > 33 bytes data, server => client 11:16:57.248819 '200 I modify TYPE as you wanted\r\n' 11:16:57.248860 < 21 bytes data, client => server 11:16:57.248868 'SIZE verifiedserver\r\n' 11:16:57.248944 Received DATA (on stdin) 11:16:57.248952 > 8 bytes data, server => client 11:16:57.248959 '213 18\r\n' 11:16:57.248996 < 21 bytes data, client => server 11:16:57.249004 'RETR verifiedserver\r\n' 11:16:57.249226 Received DATA (on stdin) 11:16:57.249235 > 29 bytes data, server => client 11:16:57.249242 '150 Binary junk (18 bytes).\r\n' 11:16:57.249686 Received DATA (on stdin) 11:16:57.249697 > 28 bytes data, server => client 11:16:57.249705 '226 File transfer complete\r\n' 11:16:57.289644 < 6 bytes data, client => server 11:16:57.289668 'QUIT\r\n' 11:16:57.289837 Received DATA (on stdin) 11:16:57.289848 > 18 bytes data, server => client 11:16:57.289856 '221 bye bye baby\r\n' 11:16:57.290578 ====> Client disconnect 11:16:57.290705 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 11:16:57.248289 Running IPv6 version 11:16:57.248344 Listening on port 42991 11:16:57.248372 Wrote pid 118420 to log/5/server/ftp_ipv6_sockdata.pid 11:16:57.248386 Received PING (on stdin) 11:16:57.248447 Received PORT (on stdin) 11:16:57.248674 ====> Client connect 11:16:57.249154 Received DATA (on stdin) 11:16:57.249163 > 18 bytes data, server => client 11:16:57.249171 'WE ROOLZ: 117407\r\n' 11:16:57.249198 Received DISC (on stdin) 11:16:57.249206 ====> Client forcibly disconnected 11:16:57.249311 Received QUIT (on stdin) 11:16:57.249321 quits 11:16:57.249509 ============> sockfilt quits === End of file ftp_ipv6_sockdata.log === Start of file server.cmd Testnum 1048 === End of file server.cmd === Start of file valgrind1048 ==118535== ==118535== Process terminating with default action of signal 4 (SIGILL) ==118535== Illegal opcode at address 0x10B06D ==118535== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118535== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1048 startnew: perl -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: ../src/curl --max-time 13 --output log/8/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:34451/verifiedserver" 2>log/8/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 117719 port 34451 * pid http-ipv6 => 117719 117719 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/valgrind105CMD (33792): ../libtool --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-time http://127.0.0.1:39283/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-time http://127.0.0.1:35853/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/9/valgrind1075 ../src/curl -q --output log/9/curl1075.out --include --trace-ascii log/9/trace1075 --trace-time http://127.0.0.1:40247/1075 -T log/9/put1075 -u testuser:testpass --anyauth > log/9/stdout1075 2> log/9/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/11/valgrind1074 ../src/curl -q --include --trace-ascii log/11/trace1074 --trace-time http://127.0.0.1:35843/want/1074 http://127.0.0.1:35843/wantmore/10740001 > log/11/stdout1074 2> log/11/stderr1074 6 ../src/curl -q --output log/8/curl1056.out --include --trace-ascii log/8/trace1056 --trace-time http://127.0.0.1:33791/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 http_ipv6_server.log 11:16:57.570360 Running HTTP IPv6 version on port 34451 11:16:57.570456 Wrote pid 117719 to log/8/server/http_ipv6_server.pid 11:16:57.570480 Wrote port 34451 to log/8/server/http_ipv6_server.port 11:16:58.630786 ====> Client connect 11:16:58.630806 accept_connection 3 returned 4 11:16:58.630818 accept_connection 3 returned 0 11:16:58.630829 Read 88 bytes 11:16:58.630837 Process 88 bytes request 11:16:58.630855 Got request: GET /verifiedserver HTTP/1.1 11:16:58.630862 Are-we-friendly question received 11:16:58.630882 Wrote request (88 bytes) input to log/8/server.input 11:16:58.630907 Identifying ourselves as friends 11:16:58.630968 Response sent (57 bytes) and written to log/8/server.response 11:16:58.630978 special request received, no persistency 11:16:58.630985 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:34451... * Connected to ::1 (::1) port 34451 > GET /verifiedserver HTTP/1.1 > Host: [::1]:34451 > User-Agent: curl/8.8.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: 117719 === End of file http_ipv6_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: 18 WE ROOLZ: 117719 === End of file server.response === Start of file valgrind1056 ==118698== ==118698== Process terminating with default action of signal 4 (SIGILL) ==118698== Illegal opcode at address 0x10B06D ==118698== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118698== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1056 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-time http://127.0.0.1:39283/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 server.cmd Testnum 1072 === End of file server.cmd === 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 ==118754== ==118754== Process terminating with default action of signal 4 (SIGILL) ==118754== Illegal opcode at address 0x10B06D ==118754== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118754== by 0x10B06D: 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-time http://127.0.0.1:35853/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 server.cmd Testnum 1073 === End of file server.cmd === 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 ==118756== ==118756== Process terminating with default action of signal 4 (SIGILL) ==118756== Illegal opcode at address 0x10B06D ==118756== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118756== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1073 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/9/valgrind1075 ../src/curl -q --output log/9/curl1075.out --include --trace-ascii log/9/trace1075 --trace-time http://127.0.0.1:40247/1075 -T log/9/put1075 -u testuser:testpass --anyauth > log/9/stdout1075 2> log/9/stderr1075 1075: 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 1075 === 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 valgrind1075 ==118844== ==118844== Process terminating with default action of signal 4 (SIGILL) ==118844== Illegal opcode at address 0x10B06D ==118844== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118844== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1075 CMD (33792): ../libtool --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/valgrind1071 ../src/curl -q --output log/12/curl1071.out --include --trace-ascii log/12/trace1071 --trace-time http://127.0.0.1:44175/1071 -T log/12/put1071 -u testuser:testpass --anyauth > log/12/stdout1071 2> log/12/stderr1071 CMD (33792): ../libtool --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/valgrind1076 ../src/curl -q --output log/10/curl1076.out --include --trace-ascii log/10/trace1076 --trace-time http://127.0.0.1:36145/blah/1076 -L -d "moo" --post302 > log/10/stdout1076 2> log/10/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/4/valgrind1077 ../src/curl -q --output log/4/curl1077.out --include --trace-ascii log/4/trace1077 --trace-time -x 127.0.0.1:41947 ftp://127.0.0.1:41947/we/want/that/page/1077 ftp://127.0.0.1:41947/we/want/that/page/10770002 > log/4/stdout1077 2> log/4/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/2/valgrind1079 ../src/curl -q --output log/2/curl1079.out --include --trace-ascii log/2/trace1079 --trace-time http://127.0.0.1:44205/1079 -u testuser:testpass --digest > log/2/stdout1079 2> log/2/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/5/valgrind1081 ../src/curl -q --include --trace-ascii log/5/trace1081 --trace-time http://127.0.0.1:33519/we/want/our/1081 http://127.0.0.1:33519/we/want/our/10810002 -w '%{redirect_url}\n' > log/5/stdout1081 2> log/5/stderr1081 CMD (33792): ../libtool --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/valgrind1080 ../src/curl -q --include --trace-ascii log/3/trace1080 --trace-time http://127.0.0.1:46313/we/want/our/1080 http://127.0.0.1:46313/we/want/our/1080 -w '%{redirect_url}\n' > log/3/stdout1080 2> log/3/stderr1080 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/11/valgrind1074 ../src/curl -q --include --trace-ascii log/11/trace1074 --trace-time http://127.0.0.1:35843/want/1074 http://127.0.0.1:35843/wantmore/10740001 > log/11/stdout1074 2> log/11/stderr1074 1074: stdout FAILED: --- log/11/check-expected 2024-05-23 11:16:58.924519336 +0200 +++ log/11/check-generated 2024-05-23 11:16:58.924519336 +0200 @@ -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/11/ 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 server.cmd Testnum 1074 === End of file server.cmd === Start of file valgrind1074 ==118795== ==118795== Process terminating with default action of signal 4 (SIGILL) ==118795== Illegal opcode at address 0x10B06D ==118795== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118795== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1074 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/12/valgrind1071 ../src/curl -q --output log/12/curl1071.out --include --trace-ascii log/12/trace1071 --trace-time http://127.0.0.1:44175/1071 -T log/12/put1071 -u testuser:testpass --anyauth > log/12/stdout1071 2> log/12/stderr1071 1071: 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 1071 === 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 valgrind1071 ==118757== ==118757== Process terminating with default action of signal 4 (SIGILL) ==118757== Illegal opcode at address 0x10B06D ==118757== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118757== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1071 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/10/valgrind1076 ../src/curl -q --output log/10/curl1076.out --include --trace-ascii log/10/trace1076 --trace-time http://127.0.0.1:36145/blah/1076 -L -d "moo" --post302 > log/10/stdout1076 2> log/10/stderr1076 1076: 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 1076 === Start of file server.cmd Testnum 1076 === End of file server.cmd === Start of file valgrind1076 ==118924== ==118924== Process terminating with default action of signal 4 (SIGILL) ==118924== Illegal opcode at address 0x10B06D ==118924== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==118924== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1076 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/4/valgrind1077 ../src/curl -q --output log/4/curl1077.out --include --trace-ascii log/4/trace1077 --trace-time -x 127.0.0.1:41947 ftp://127.0.0.1:41947/we/want/that/page/1077 ftp://127.0.0.1:41947/we/want/that/page/10770002 > log/4/stdout1077 2> log/4/stderr1077 1077: 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 1077 === Start of file server.cmd Testnum 1077 === End of file server.cmd === Start of file valgrind1077 ==119038== ==119038== Process terminating with default action of signal 4 (SIGILL) ==119038== Illegal opcode at address 0x10B06D ==119038== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119038== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1077 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/2/valgrind1079 ../src/curl -q --output log/2/curl1079.out --include --trace-ascii log/2/trace1079 --trace-time http://127.0.0.1:44205/1079 -u testuser:testpass --digest > log/2/stdout1079 2> log/2/stderr1079 1079: 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 1079 === Start of file server.cmd Testnum 1079 === End of file server.cmd === Start of file valgrind1079 ==119059== ==119059== Process terminating with default action of signal 4 (SIGILL) ==119059== Illegal opcode at address 0x10B06D ==119059== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119059== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1079 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/5/valgrind1081 ../src/curl -q --include --trace-ascii log/5/trace1081 --trace-time http://127.0.0.1:33519/we/want/our/1081 http://127.0.0.1:33519/we/want/our/10810002 -w '%{redirect_url}\n' > log/5/stdout1081 2> log/5/stderr1081 1081: stdout FAILED: --- log/5/check-expected 2024-05-23 11:16:58.957853355 +0200 +++ log/5/check-generated 2024-05-23 11:16:58.957853355 +0200 @@ -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:33519/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/5/ 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:33519/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 server.cmd Testnum 1081 === End of file server.cmd === Start of file valgrind1081 ==119072== ==119072== Process terminating with default action of signal 4 (SIGILL) ==119072== Illegal opcode at address 0x10B06D ==119072== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119072== by 0x10B06D: 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/8/valgrind1082 ../src/curl -q --output log/8/curl1082.out --include --trace-ascii log/8/trace1082 --trace-time http://127.0.0.1:33791/1082 -4 --interface 127.0.0.1 > log/8/stdout1082 2> log/8/stderr1082 CMD (0): ../src/curl --max-time 13 --output log/6/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:42463/verifiedserver" 2>log/6/http2_verify.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/1/valgrind1083 ../src/curl -q --output log/1/curl1083.out --include --trace-ascii log/1/trace1083 --trace-time -g "http://[::1]:46787/1083" --interface ip6-localhost > log/1/stdout1083 2> log/1/stderr1083 CMD (33792): ../libtool --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/valgrind1084 ../src/curl -q --output log/7/curl1084.out --include --trace-ascii log/7/trace1084 --trace-time http://127.0.0.1:47/1084 --interface non-existing-host.haxx.se. > log/7/stdout1084 2> log/7/stderr1084 CMD (33792): ../libtool --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/valgrind1085 ../src/curl -q --output log/9/curl1085.out --include --trace-ascii log/9/trace1085 --trace-time -g "http://[::1]:47/1085" --interface non-existing-host.haxx.se. > log/9/stdout1085 2> log/9/stderr1085 CMD (33792): ../libtool --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/valgrind1087 ../src/curl -q --output log/12/curl1087.out --include --trace-ascii log/12/trace1087 --trace-time http://first.host.it.is/we/want/that/page/10871000 -x 127.0.0.1:44175 --user iam:myself --location --anyauth > log/12/stdout1087 2> log/12/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/valgrind1092 ../src/curl -q --output log/3/curl1092.out --include --trace-ascii log/3/trace1092 --trace-time "ftp://127.0.0.1:46313/we/want/that/page/1092;type=i" --use-ascii -x 127.0.0.1:46313 > log/3/stdout1092 2> log/3/stderr1092 CMD (33792): ../libtool --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/valgrind1086 ../src/curl -q --output log/11/curl1086.out --include --trace-ascii log/11/trace1086 --trace-time ftp://127.0.0.1:36091/1086 -m 7 > log/11/stdout1086 2> log/11/stderr1086 * kill pid for ftp-ctrl => 80592 RUN: Process with pid 80591 signalled to die 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/3/valgrind1080 ../src/curl -q --include --trace-ascii log/3/trace1080 --trace-time http://127.0.0.1:46313/we/want/our/1080 http://127.0.0.1:46313/we/want/our/1080 -w '%{redirect_url}\n' > log/3/stdout1080 2> log/3/stderr1080 1080: stdout FAILED: --- log/3/check-expected 2024-05-23 11:16:58.964520158 +0200 +++ log/3/check-generated 2024-05-23 11:16:58.964520158 +0200 @@ -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:46313/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:46313/we/want/our/data/10800002.txt?coolsite=yes[LF] == Contents of files in the log/3/ 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:46313/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:46313/we/want/our/data/10800002.txt?coolsite=yes[LF] === End of file check-expected === Start of file server.cmd Testnum 1080 === End of file server.cmd === Start of file valgrind1080 ==119055== ==119055== Process terminating with default action of signal 4 (SIGILL) ==119055== Illegal opcode at address 0x10B06D ==119055== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119055== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1080 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/8/valgrind1082 ../src/curl -q --output log/8/curl1082.out --include --trace-ascii log/8/trace1082 --trace-time http://127.0.0.1:33791/1082 -4 --interface 127.0.0.1 > log/8/stdout1082 2> log/8/stderr1082 1082: 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 1082 === Start of file server.cmd Testnum 1082 === End of file server.cmd === Start of file valgrind1082 ==119254== ==119254== Process terminating with default action of signal 4 (SIGILL) ==119254== Illegal opcode at address 0x10B06D ==119254== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119254== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1082 prechecked /usr/bin/perl -e "if ('[::1]' ne '[::1]') {print 'Test requires default test client host address';} else {exec './server/resolve --ipv6 ip6-localhost'; print 'Cannot run precheck resolve';}" test 1083...[HTTP-IPv6 GET with ip6-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/1/valgrind1083 ../src/curl -q --output log/1/curl1083.out --include --trace-ascii log/1/trace1083 --trace-time -g "http://[::1]:46787/1083" --interface ip6-localhost > log/1/stdout1083 2> log/1/stderr1083 1083: 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 1083 === Start of file server.cmd Testnum 1083 === End of file server.cmd === Start of file valgrind1083 ==119305== ==119305== Process terminating with default action of signal 4 (SIGILL) ==119305== Illegal opcode at address 0x10B06D ==119305== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119305== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1083 * 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/7/valgrind1084 ../src/curl -q --output log/7/curl1084.out --include --trace-ascii log/7/trace1084 --trace-time http://127.0.0.1:47/1084 --interface non-existing-host.haxx.se. > log/7/stdout1084 2> log/7/stderr1084 curl returned 132, when expecting 45 1084: exit FAILED == Contents of files in the log/7/ dir after test 1084 === Start of file server.cmd Testnum 1084 === End of file server.cmd === Start of file valgrind1084 ==119325== ==119325== Process terminating with default action of signal 4 (SIGILL) ==119325== Illegal opcode at address 0x10B06D ==119325== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119325== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1084 * starts no server prechecked ./server/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/9/valgrind1085 ../src/curl -q --output log/9/curl1085.out --include --trace-ascii log/9/trace1085 --trace-time -g "http://[::1]:47/1085" --interface non-existing-host.haxx.se. > log/9/stdout1085 2> log/9/stderr1085 curl returned 132, when expecting 45 1085: exit FAILED == Contents of files in the log/9/ dir after test 1085 === Start of file server.cmd Testnum 1085 === End of file server.cmd === Start of file valgrind1085 ==119370== ==119370== Process terminating with default action of signal 4 (SIGILL) ==119370== Illegal opcode at address 0x10B06D ==119370== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119370== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1085 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/12/valgrind1087 ../src/curl -q --output log/12/curl1087.out --include --trace-ascii log/12/trace1087 --trace-time http://first.host.it.is/we/want/that/page/10871000 -x 127.0.0.1:44175 --user iam:myself --location --anyauth > log/12/stdout1087 2> log/12/stderr1087 1087: 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 1087 === Start of file server.cmd Testnum 1087 === End of file server.cmd === Start of file valgrind1087 ==119412== ==119412== Process terminating with default action of signal 4 (SIGILL) ==119412== Illegal opcode at address 0x10B06D ==119412== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119412== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1087 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/3/valgrind1092 ../src/curl -q --output log/3/curl1092.out --include --trace-ascii log/3/trace1092 --trace-time "ftp://127.0.0.1:46313/we/want/that/page/1092;type=i" --use-ascii -x 127.0.0.1:46313 > log/3/stdout1092 2> log/3/stderr10CMD (33792): ../libtool --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/valgrind1088 ../src/curl -q --output log/10/curl1088.out --include --trace-ascii log/10/trace1088 --trace-time http://first.host.it.is/we/want/that/page/10881000 -x 127.0.0.1:36145 --user iam:myself --location-trusted --anyauth > log/10/stdout1088 2> log/10/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/valgrind1091 ../src/curl -q --output log/5/curl1091.out --include --trace-ascii log/5/trace1091 --trace-time "ftp://127.0.0.1:35155/%2ftmp/moo/1091;type=i" --use-ascii > log/5/stdout1091 2> log/5/stderr1091 CMD (33792): ../libtool --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/valgrind1089 ../src/curl -q --include --trace-ascii log/4/trace1089 --trace-time http://127.0.0.1:41947/1089 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/4/stdout1089 2> log/4/stderr1089 92 1092: 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 1092 === Start of file server.cmd Testnum 1092 === End of file server.cmd === Start of file valgrind1092 ==119588== ==119588== Process terminating with default action of signal 4 (SIGILL) ==119588== Illegal opcode at address 0x10B06D ==119588== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119588== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1092 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/10/valgrind1088 ../src/curl -q --output log/10/curl1088.out --include --trace-ascii log/10/trace1088 --trace-time http://first.host.it.is/we/want/that/page/10881000 -x 127.0.0.1:36145 --user iam:myself --location-trusted --anyauth > log/10/stdout1088 2> log/10/stderr1088 1088: 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 1088 === Start of file server.cmd Testnum 1088 === End of file server.cmd === Start of file valgrind1088 ==119445== ==119445== Process terminating with default action of signal 4 (SIGILL) ==119445== Illegal opcode at address 0x10B06D ==119445== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119445== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1088 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/5/valgrind1091 ../src/curl -q --output log/5/curl1091.out --include --trace-ascii log/5/trace1091 --trace-time "ftp://127.0.0.1:35155/%2ftmp/moo/1091;type=i" --use-ascii > log/5/stdout1091 2> log/5/stderr1091 1091: 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 1091 === Start of file server.cmd Testnum 1091 === End of file server.cmd === Start of file valgrind1091 ==119538== ==119538== Process terminating with default action of signal 4 (SIGILL) ==119538== Illegal opcode at address 0x10B06D ==119538== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119538== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1091 CMD (33792): ../libtool --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/valgrind1090 ../src/curl -q --include --trace-ascii log/2/trace1090 --trace-time http://127.0.0.1:44205/1090 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout1090 2> log/2/stderr1090 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/4/valgrind1089 ../src/curl -q --include --trace-ascii log/4/trace1089 --trace-time http://127.0.0.1:41947/1089 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/4/stdout1089 2> log/4/stderr1089 1089: stdout FAILED: --- log/4/check-expected 2024-05-23 11:16:59.611200106 +0200 +++ log/4/check-generated 2024-05-23 11:16:59.611200106 +0200 @@ -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:41947/10890001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/4/ 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:41947/10890001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file server.cmd Testnum 1089 === End of file server.cmd === Start of file valgrind1089 ==119540== ==119540== Process terminating with default action of signal 4 (SIGILL) ==119540== Illegal opcode at address 0x10B06D ==119540== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119540== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1089 CMD (33792): ../libtool --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/valgrind1093 ../src/curl -q --output log/8/curl1093.out --include --trace-ascii log/8/trace1093 --trace-time "tftp://127.0.0.1:49650//1093;mode=i" --use-ascii > log/8/stdout1093 2> log/8/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/1/valgrind1094 ../src/curl -q --output log/1/curl1094.out --include --trace-ascii log/1/trace1094 --trace-time "tftp://127.0.0.1:50900//1094;mode=netascii" > log/1/stdout1094 2> log/1/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/6/valgrind1078 ../src/curl -q --include --trace-ascii log/6/trace1078 --trace-time --proxy1.0 127.0.0.1:42463 -p http://127.0.0.1:41583/we/want/that/page/1078 http://127.0.0.1:41583/we/want/that/page/1078 > log/6/stdout1078 2> log/6/stderr1078 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/2/valgrind1090 ../src/curl -q --include --trace-ascii log/2/trace1090 --trace-time http://127.0.0.1:44205/1090 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout1090 2> log/2/stderr1090 1090: stdout FAILED: --- log/2/check-expected 2024-05-23 11:16:59.617866911 +0200 +++ log/2/check-generated 2024-05-23 11:16:59.617866911 +0200 @@ -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:44205/10900001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/2/ 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:44205/10900001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file server.cmd Testnum 1090 === End of file server.cmd === Start of file valgrind1090 ==119534== ==119534== Process terminating with default action of signal 4 (SIGILL) ==119534== Illegal opcode at address 0x10B06D ==119534== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119534== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1090 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/8/valgrind1093 ../src/curl -q --output log/8/curl1093.out --include --trace-ascii log/8/trace1093 --trace-time "tftp://127.0.0.1:49650//1093;mode=i" --use-ascii > log/8/stdout1093 2> log/8/stderr1093 1093: 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 1093 === Start of file server.cmd Testnum 1093 === End of file server.cmd === Start of file valgrind1093 ==119802== ==119802== Process terminating with default action of signal 4 (SIGILL) ==119802== Illegal opcode at address 0x10B06D ==119802== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119802== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1093 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/1/valgrind1094 ../src/curl -q --output log/1/curl1094.out --include --trace-ascii log/1/trace1094 --trace-time "tftp://127.0.0.1:50900//1094;mode=netascii" > log/1/stdout1094 2> log/1/stderr1094 1094: 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 1094 === Start of file server.cmd Testnum 1094 === End of file server.cmd === Start of file valgrind1094 ==119893== ==119893== Process terminating with default action of signal 4 (SIGILL) ==119893== Illegal opcode at address 0x10B06D ==119893== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119893== by 0x10B06D: 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/7/valgrind1095 ../src/curl -q --output log/7/curl1095.out --include --trace-ascii log/7/trace1095 --trace-time http://127.0.0.1:35853/1095 -u testuser:testpass --digest > log/7/stdout1095 2> log/7/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/9/valgrind1096 ../src/curl -q --output log/9/curl1096.out --include --trace-ascii log/9/trace1096 --trace-time ftp://127.0.0.1:39811/dir/1096 ftp://127.0.0.1:39811/dir/1096 > log/9/stdout1096 2> log/9/stderr1096 CMD (33792): ../libtool --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/valgrind1099 ../src/curl -q --include --trace-ascii log/3/trace1099 --trace-time tftp://127.0.0.1:35271/an/invalid-file tftp://127.0.0.1:35271//1099 > log/3/stdout1099 2> log/3/stderr1099 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/6/server/http2_server.pid" --logfile "log/6/http2_server.log" --logdir "log/6" --portfile log/6/server/http2_server.port --config log/6/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/6/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:42463/verifiedserver" 2>log/6/http2_verify.log RUN: HTTP2 server is on PID 119016 port 42463 * pid http-proxy => 119016 119016 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/6/valgrind1078 ../src/curl -q --include --trace-ascii log/6/trace1078 --trace-time --proxy1.0 127.0.0.1:42463 -p http://127.0.0.1:41583/we/want/that/page/1078 http://127.0.0.1:41583/we/want/that/page/1078 > log/6/stdout1078 2> log/6/stderr1078 1078: stdout FAILED: --- log/6/check-expected 2024-05-23 11:17:00.054542545 +0200 +++ log/6/check-generated 2024-05-23 11:17:00.054542545 +0200 @@ -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/6/ 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 http2_server.log 11:16:58.899623 Run as proxy, CONNECT to host 127.0.0.1 11:16:58.899707 Running HTTP IPv4 version on port 42463 11:16:58.899737 Wrote pid 119016 to log/6/server/http2_server.pid 11:16:58.899759 Wrote port 42463 to log/6/server/http2_server.port 11:16:59.931865 ====> Client connect 11:16:59.931885 accept_connection 3 returned 4 11:16:59.931897 accept_connection 3 returned 0 11:16:59.931909 Read 92 bytes 11:16:59.931917 Process 92 bytes request 11:16:59.931936 Got request: GET /verifiedserver HTTP/1.1 11:16:59.931943 Are-we-friendly question received 11:16:59.931962 Wrote request (92 bytes) input to log/6/proxy.input 11:16:59.931981 Identifying ourselves as friends 11:16:59.932040 Response sent (57 bytes) and written to log/6/proxy.response 11:16:59.932049 special request received, no persistency 11:16:59.932056 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:42463... * Connected to 127.0.0.1 (127.0.0.1) port 42463 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42463 > User-Agent: curl/8.8.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: 119016 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 119016 === End of file proxy.response === Start of file server.cmd Testnum 1078 === End of file server.cmd === Start of file valgrind1078 ==119864== ==119864== Process terminating with default action of signal 4 (SIGILL) ==119864== Illegal opcode at address 0x10B06D ==119864== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119864== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1078 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/7/valgrind1095 ../src/curl -q --output log/7/curl1095.out --include --trace-ascii log/7/trace1095 --trace-time http://127.0.0.1:35853/1095 -u testuser:testpass --digest > log/7/stdout1095 2> log/7/stderr1095 1095: 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 1095 === Start of file server.cmd Testnum 1095 === End of file server.cmd === Start of file valgrind1095 ==119934== ==119934== Process terminating with default action of signal 4 (SIGILL) ==119934== Illegal opcode at address 0x10B06D ==119934== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119934== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1095 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/9/valgrind1096 ../src/curl -q --output log/9/curl1096.out --include --trace-ascii log/9/trace1096 --trace-time ftp://127.0.0.1:39811/dir/1096 ftp://127.0.0.1:39811/dir/1096 > log/9/stdout1096 2> log/9/stderr1096 1096: 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 1096 === 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 ==120008== ==120008== Process terminating with default action of signal 4 (SIGILL) ==120008== Illegal opcode at address 0x10B06D ==120008== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120008== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1096 CMD (33792): ../libtool --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/valgrind1103 ../src/curl -q --output log/4/curl1103.out --include --trace-ascii log/4/trace1103 --trace-time ftp://127.0.0.1:36137/1103 > log/4/stdout1103 2> log/4/stderr1103 CMD (33792): ../libtool --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/valgrind1098 ../src/curl -q --include --trace-ascii log/12/trace1098 --trace-time ftp://ftp-site/moo/1098 ftp://ftp-site/moo/1098 --proxy http://127.0.0.1:44175 > log/12/stdout1098 2> log/12/stderr1098 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/3/valgrind1099 ../src/curl -q --include --trace-ascii log/3/trace1099 --trace-time tftp://127.0.0.1:35271/an/invalid-file tftp://127.0.0.1:35271//1099 > log/3/stdout1099 2> log/3/stderr1099 1099: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:00.211212429 +0200 +++ log/3/check-generated 2024-05-23 11:17:00.211212429 +0200 @@ -1 +0,0 @@ -data for 1099[LF] == Contents of files in the log/3/ dir after test 1099 === Start of file check-expected data for 1099[LF] === End of file check-expected === Start of file server.cmd Testnum 1099 === End of file server.cmd === Start of file valgrind1099 ==120078== ==120078== Process terminating with default action of signal 4 (SIGILL) ==120078== Illegal opcode at address 0x10B06D ==120078== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120078== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1099 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/4/valgrind1103 ../src/curl -q --output log/4/curl1103.out --include --trace-ascii log/4/trace1103 --trace-time ftp://127.0.0.1:36137/1103 > log/4/stdout1103 2> log/4/stderr1103 1103: 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 1103 === 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 ==120119== ==120119== Process terminating with default action of signal 4 (SIGILL) ==120119== Illegal opcode at address 0x10B06D ==120119== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120119== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1103 CMD (33792): ../libtool --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/valgrind1102 ../src/curl -q --output log/5/curl1102.out --include --trace-ascii log/5/trace1102 --trace-time ftp://127.0.0.1:35155/1102 > log/5/stdout1102 2> log/5/stderr1102 CMD (33792): ../libtool --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/valgrind1104 ../src/curl -q --output log/2/curl1104.out --include --trace-ascii log/2/trace1104 --trace-time http://127.0.0.1:44205/want/1104 -L -x 127.0.0.1:44205 -c log/2/cookies1104.jar > log/2/stdout1104 2> log/2/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/10/valgrind1101 ../src/curl -q --output log/10/curl1101.out --include --trace-ascii log/10/trace1101 --trace-time http://user:secret@127.0.0.1:36145/gimme/1101 > log/10/stdout1101 2> log/10/stderr1101 CMD (33792): ../libtool --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/valgrind1105 ../src/curl -q --output log/8/curl1105.out --include --trace-ascii log/8/trace1105 --trace-time "http://127.0.0.1:33791/we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105" -c log/8/cookie1105.txt -d "userid=myname&password=mypassword" > log/8/stdout1105 2> log/8/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/1/valgrind1106 ../src/curl -q --output log/1/curl1106.out --include --trace-ascii log/1/trace1106 --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/valgrind1108 ../src/curl -q --output log/7/curl1108.out --include --trace-ascii log/7/trace1108 --trace-time ftp://127.0.0.1:45903/1108 --ftp-pret > log/7/stdout1108 2> log/7/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/6/valgrind1107 ../src/curl -q --output log/6/curl1107.out --include --trace-ascii log/6/trace1107 --trace-time ftp://127.0.0.1:35103/1107 --ftp-pret > log/6/stdout1107 2> log/6/stderr1107 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/12/valgrind1098 ../src/curl -q --include --trace-ascii log/12/trace1098 --trace-time ftp://ftp-site/moo/1098 ftp://ftp-site/moo/1098 --proxy http://127.0.0.1:44175 > log/12/stdout1098 2> log/12/stderr1098 1098: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:00.227879438 +0200 +++ log/12/check-generated 2024-05-23 11:17:00.227879438 +0200 @@ -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/12/ 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 server.cmd Testnum 1098 === End of file server.cmd === Start of file valgrind1098 ==120028== ==120028== Process terminating with default action of signal 4 (SIGILL) ==120028== Illegal opcode at address 0x10B06D ==120028== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120028== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1098 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/5/valgrind1102 ../src/curl -q --output log/5/curl1102.out --include --trace-ascii log/5/trace1102 --trace-time ftp://127.0.0.1:35155/1102 > log/5/stdout1102 2> log/5/stderr1102 1102: 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 1102 === 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 ==120122== ==120122== Process terminating with default action of signal 4 (SIGILL) ==120122== Illegal opcode at address 0x10B06D ==120122== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120122== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1102 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/2/valgrind1104 ../src/curl -q --output log/2/curl1104.out --include --trace-ascii log/2/trace1104 --trace-time http://127.0.0.1:44205/want/1104 -L -x 127.0.0.1:44205 -c log/2/cookies1104.jar > log/2/stdout1104 2> log/2/stderr1104 1104: 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 1104 === Start of file server.cmd Testnum 1104 === End of file server.cmd === Start of file valgrind1104 ==120182== ==120182== Process terminating with default action of signal 4 (SIGILL) ==120182== Illegal opcode at address 0x10B06D ==120182== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120182== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1104 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/10/valgrind1101 ../src/curl -q --output log/10/curl1101.out --include --trace-ascii log/10/trace1101 --trace-time http://user:secret@127.0.0.1:36145/gimme/1101 > log/10/stdout1101 2> log/10/stderr1101 1101: 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 1101 === Start of file server.cmd Testnum 1101 === End of file server.cmd === Start of file valgrind1101 ==120121== ==120121== Process terminating with default action of signal 4 (SIGILL) ==120121== Illegal opcode at address 0x10B06D ==120121== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120121== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1101 prechecked /usr/bin/perl -e "print 'Test requires default test server host' if ( '127.0.0.1' ne '127.0.0.1' );" 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/8/valgrind1105 ../src/curl -q --output log/8/curl1105.out --include --trace-ascii log/8/trace1105 --trace-time "http://127.0.0.1:33791/we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105" -c log/8/cookie1105.txt -d "userid=myname&password=mypassword" > log/8/stdout1105 2> log/8/stderr1105 1105: 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 1105 === Start of file server.cmd Testnum 1105 === End of file server.cmd === Start of file valgrind1105 ==120357== ==120357== Process terminating with default action of signal 4 (SIGILL) ==120357== Illegal opcode at address 0x10B06D ==120357== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120357== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1105 setenv ftp_proxy = http://127.0.0.1:39283/ 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-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 server.cmd Testnum 1106 === End of file server.cmd === Start of file valgrind1106 ==120409== ==120409== Process terminating with default action of signal 4 (SIGILL) ==120409== Illegal opcode at address 0x10B06D ==120409== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120409== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1106 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/7/valgrind1108 ../src/curl -q --output log/7/curl1108.out --include --trace-ascii log/7/trace1108 --trace-time ftp://127.0.0.1:45903/1108 --ftp-pret > log/7/stdout1108 2> log/7/stderr1108 1108: 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 1108 === Start of file server.cmd REPLY PRET 550 unknown command Testnum 1108 === End of file server.cmd === Start of file valgrind1108 ==120443== ==120443== Process terminating with default action of signal 4 (SIGILL) ==120443== Illegal opcode at address 0x10B06D ==120443== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120443== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1108 test 1107...[FTP RETR PASV with PRET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --qCMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1119.pl /startdir/src/curl/tests/.. ../include/curl > log/7/stdout1119 2> log/7/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/9/valgrind1109 ../src/curl -q --output log/9/curl1109.out --include --trace-ascii log/9/trace1109 --trace-time http://127.0.0.1:40247/1109#test > log/9/stdout1109 2> log/9/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/2/valgrind1115 ../src/curl -q --output log/2/curl1115.out --include --trace-ascii log/2/trace1115 --trace-time http://127.0.0.1:44205/1115 > log/2/stdout1115 2> log/2/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/3/valgrind1110 ../src/curl -q --output log/3/curl1110.out --include --trace-ascii log/3/trace1110 --trace-time http://127.0.0.1:46313/1110?q=foobar#fragment > log/3/stdout1110 2> log/3/stderr1110 CMD (33792): ../libtool --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/valgrind1116 ../src/curl -q --output log/10/curl1116.out --include --trace-ascii log/10/trace1116 --trace-time http://127.0.0.1:36145/1116 -D log/10/heads1116 > log/10/stdout1116 2> log/10/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/4/valgrind1111 ../src/curl -q --output log/4/curl1111.out --include --trace-ascii log/4/trace1111 --trace-time http://127.0.0.1:41947/1111?q=foobar#fragment#fragment2 > log/4/stdout1111 2> log/4/stderr1111 CMD (33792): ../libtool --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/valgrind1117 ../src/curl -q --include --trace-ascii log/8/trace1117 --trace-time -r 10-22 http://127.0.0.1:33791/want/1117 http://127.0.0.1:33791/wantmore/11170001 > log/8/stdout1117 2> log/8/stderr1117 uiet --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-time ftp://127.0.0.1:35103/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 server.cmd REPLY PRET 200 fine Testnum 1107 === End of file server.cmd === Start of file valgrind1107 ==120414== ==120414== Process terminating with default action of signal 4 (SIGILL) ==120414== Illegal opcode at address 0x10B06D ==120414== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120414== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1107 * starts no server test 1119...[Verify that symbols-in-versions and headers are in sync] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1119.pl /startdir/src/curl/tests/.. ../include/curl > log/7/stdout1119 2> log/7/stderr1119 valgrind SKIPPED s------e--- OK (980 out of 1513, remaining: 00:43, took 0.171s, duration: 01:19) 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/9/valgrind1109 ../src/curl -q --output log/9/curl1109.out --include --trace-ascii log/9/trace1109 --trace-time http://127.0.0.1:40247/1109#test > log/9/stdout1109 2> log/9/stderr1109 1109: 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 1109 === Start of file server.cmd Testnum 1109 === End of file server.cmd === Start of file valgrind1109 ==120552== ==120552== Process terminating with default action of signal 4 (SIGILL) ==120552== Illegal opcode at address 0x10B06D ==120552== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120552== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1109 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/2/valgrind1115 ../src/curl -q --output log/2/curl1115.out --include --trace-ascii log/2/trace1115 --trace-time http://127.0.0.1:44205/1115 > log/2/stdout1115 2> log/2/stderr1115 1115: 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 1115 === Start of file server.cmd Testnum 1115 === End of file server.cmd === Start of file valgrind1115 ==120634== ==120634== Process terminating with default action of signal 4 (SIGILL) ==120634== Illegal opcode at address 0x10B06D ==120634== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120634== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1115 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/3/valgrind1110 ../src/curl -q --output log/3/curl1110.out --include --trace-ascii log/3/trace1110 --trace-time http://127.0.0.1:46313/1110?q=foobar#fragment > log/3/stdout1110 2> log/3/stderr1110 1110: 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 1110 === Start of file server.cmd Testnum 1110 === End of file server.cmd === Start of file valgrind1110 ==120575== ==120575== Process terminating with default action of signal 4 (SIGILL) ==120575== Illegal opcode at address 0x10B06D ==120575== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120575== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1110 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/10/valgrind1116 ../src/curl -q --output log/10/curl1116.out --include --trace-ascii log/10/trace1116 --trace-time http://127.0.0.1:36145/1116 -D log/10/heads1116 > log/10/stdout1116 2> log/10/stderr1116 1116: 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 1116 === Start of file server.cmd writedelay: 10 Testnum 1116 === End of file server.cmd === Start of file valgrind1116 ==120669== ==120669== Process terminating with default action of signal 4 (SIGILL) ==120669== Illegal opcode at address 0x10B06D ==120669== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120669== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1116 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/4/valgrind1111 ../src/curl -q --output log/4/curl1111.out --include --trace-ascii log/4/trace1111 --trace-time http://127.0.0.1:41947/1111?q=foobar#fragment#fragment2 > log/4/stdout1111 2> log/4/stderr1111 1111: 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 1111 === Start of file server.cmd Testnum 1111 === End of file server.cmd === Start of file valgrind1111 ==120597== ==120597== Process terminating with default action of signal 4 (SIGILL) ==120597== Illegal opcode at address 0x10B06D ==120597== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120597== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1111 CMD (33792): ../libtool --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/valgrind1118 ../src/curl -q --output log/1/curl1118.out --include --trace-ascii log/1/trace1118 --trace-time http://127.0.0.1:39283?email=name@example.com/1118 > log/1/stdout1118 2> log/1/stderr1118 CMD (33792): ../libtool --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/valgrind1120 ../src/curl -q --output log/6/curl1120.out --include --trace-ascii log/6/trace1120 --trace-time ftp://127.0.0.1:35103/a/path/1120 > log/6/stdout1120 2> log/6/stderr1120 CMD (33792): ../libtool --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/valgrind1113 ./libtest/lib574 "ftp://127.0.0.1:35155/fully_simulated/DOS/*.txt" > log/5/stdout1113 2> log/5/stderr1113 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/8/valgrind1117 ../src/curl -q --include --trace-ascii log/8/trace1117 --trace-time -r 10-22 http://127.0.0.1:33791/want/1117 http://127.0.0.1:33791/wantmore/11170001 > log/8/stdout1117 2> log/8/stderr1117 1117: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:00.997895253 +0200 +++ log/8/check-generated 2024-05-23 11:17:00.997895253 +0200 @@ -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/8/ 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 server.cmd writedelay: 1000 Testnum 1117 === End of file server.cmd === Start of file valgrind1117 ==120890== ==120890== Process terminating with default action of signal 4 (SIGILL) ==120890== Illegal opcode at address 0x10B06D ==120890== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120890== by 0x10B06D: 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/1/valgrind1118 ../src/curl -q --output log/1/curl1118.out --include --trace-ascii log/1/trace1118 --trace-time http://127.0.0.1:39283?email=name@example.com/1118 > log/1/stdout1118 2> log/1/stderr1118 1118: 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 1118 === Start of file server.cmd Testnum 1118 === End of file server.cmd === Start of file valgrind1118 ==120939== ==120939== Process terminating with default action of signal 4 (SIGILL) ==120939== Illegal opcode at address 0x10B06D ==120939== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120939== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1118 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/6/valgrind1120 ../src/curl -q --output log/6/curl1120.out --include --trace-ascii log/6/trace1120 --trace-time ftp://127.0.0.1:35103/a/path/1120 > log/6/stdout1120 2> log/6/stderr1120 1120: 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 1120 === Start of file server.cmd REPLY CWD 421 Timeout Testnum 1120 === End of file server.cmd === Start of file valgrind1120 ==120946== ==120946== Process terminating with default action of signal 4 (SIGILL) ==120946== Illegal opcode at address 0x10B06D ==120946== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==120946== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1120 CMD (33792): ../libtool --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/valgrind1114 ./libtest/lib576 ftp://127.0.0.1:41005/fully_simulated/DOS/* > log/12/stdout1114 2> log/12/stderr1114 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/5/valgrind1113 ./libtest/lib574 "ftp://127.0.0.1:35155/fully_simulated/DOS/*.txt" > log/5/stdout1113 2> log/5/stderr1113 1113: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:01.211232969 +0200 +++ log/5/check-generated 2024-05-23 11:17:01.211232969 +0200 @@ -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/5/ 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 server.cmd Testnum 1113 === End of file server.cmd === Start of file stderr1113 URL: ftp://127.0.0.1:35155/fully_simulated/DOS/*.txt === End of file stderr1113 === Start of file valgrind1113 ==120635== ==120635== Process terminating with default action of signal 4 (SIGILL) ==120635== Illegal opcode at address 0x48DC18B ==120635== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==120635== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==120635== by 0x48DC18B: Curl_open (url.c:519) ==120635== by 0x487CCEF: curl_easy_init (easy.c:368) ==120635== by 0x10908A: UnknownInlinedFun (lib574.c:49) ==120635== by 0x10908A: main (first.c:178) ==120635== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==120635== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120635== by 0x4A58EC8: __tsearch (tsearch.c:337) ==120635== by 0x4A58EC8: tsearch (tsearch.c:290) ==120635== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==120635== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120635== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120635== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120635== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==120635== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==120635== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120635== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120635== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120635== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120635== by 0x497836B: setlocale (setlocale.c:337) ==120635== by 0x109047: main (first.c:157) ==120635== ==120635== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==120635== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120635== by 0x4A58EC8: __tsearch (tsearch.c:337) ==120635== by 0x4A58EC8: tsearch (tsearch.c:290) ==120635== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==120635== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==120635== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==120635== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120635== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120635== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120635== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120635== by 0x497836B: setlocale (setlocale.c:337) ==120635== by 0x109047: main (first.c:157) ==120635== ==120635== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==120635== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120635== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==120635== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120635== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120635== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120635== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==120635== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==120635== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120635== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120635== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120635== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120635== by 0x497836B: setlocale (setlocale.c:337) ==120635== by 0x109047: main (first.c:157) ==120635== ==120635== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==120635== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120635== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==120635== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==120635== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==120635== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120635== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120635== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120635== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120635== by 0x497836B: setlocale (setlocale.c:337) ==120635== by 0x109047: main (first.c:157) ==120635== ==120635== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==120635== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==120635== by 0x48DC163: Curl_open (url.c:510) ==120635== by 0x487CCEF: curl_easy_init (easy.c:368) ==120635== by 0x10908A: UnknownInlinedFun (lib574.c:49) ==120635== by 0x10908A: main (first.c:178) ==120635== ==120635== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==120635== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120635== by 0x4A58EC8: __tsearch (tsearch.c:337) ==120635== by 0x4A58EC8: tsearch (tsearch.c:290) ==120635== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==120635== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120635== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120635== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120635== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==120635== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==120635== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120635== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120635== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120635== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120635== by 0x497836B: setlocale (setlocale.c:337) ==120635== by 0x109047: main (first.c:157) ==120635== ==120635== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==120635== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120635== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==120635== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120635== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120635== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120635== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==120635== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==120635== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120635== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120635== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120635== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120635== by 0x497836B: setlocale (setlocale.c:337) ==120635== by 0x109047: main (first.c:157) ==120635== === End of file valgrind1113 test 1114...[FTP wildcard download - skip/parser_correctness/CURLOPT_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/12/valgrind1114 ./libtest/lib576 ftp://127.0.0.1:41005/fully_simulated/DOS/* > log/12/stdout1114 2> log/12/stderr1114 1114: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:01.217899771 +0200 +++ log/12/check-generated 2024-05-23 11:17:01.217899771 +0200 @@ -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/12/ 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 server.cmd Testnum 1114 === End of file server.cmd === Start of file stderr1114 URL: ftp://127.0.0.1:41005/fully_simulated/DOS/* === End of file stderr1114 === Start of file valgrind1114 ==120673== ==120673==CMD (33792): ../libtool --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/valgrind1121 ../src/curl -q --output log/7/curl1121.out --include --trace-ascii log/7/trace1121 --trace-time -H "Host: host1" -H "Host: host2" -H "Host: host3" http://127.0.0.1:35853/1121 > log/7/stdout1121 2> log/7/stderr1121 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1132.pl /startdir/src/curl/tests/../lib > log/7/stdout1132 2> log/7/stderr1132 CMD (33792): ../libtool --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/valgrind1125 ../src/curl -q --output log/10/curl1125.out --include --trace-ascii log/10/trace1125 --trace-time http://127.0.0.1:36145/1125 --tr-encoding -H "Connection: close" > log/10/stdout1125 2> log/10/stderr1125 CMD (33792): ../libtool --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/valgrind1126 ../src/curl -q --output log/4/curl1126.out --include --trace-ascii log/4/trace1126 --trace-time http://127.0.0.1:41947/1126 -z "dec 12 12:00:00 1999 GMT" > log/4/stdout1126 2> log/4/stderr1126 Process terminating with default action of signal 4 (SIGILL) ==120673== Illegal opcode at address 0x48DC18B ==120673== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==120673== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==120673== by 0x48DC18B: Curl_open (url.c:519) ==120673== by 0x487CCEF: curl_easy_init (easy.c:368) ==120673== by 0x109098: UnknownInlinedFun (lib576.c:103) ==120673== by 0x109098: main (first.c:178) ==120673== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==120673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==120673== by 0x4A58EC8: tsearch (tsearch.c:290) ==120673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==120673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120673== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==120673== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==120673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120673== by 0x497836B: setlocale (setlocale.c:337) ==120673== by 0x109054: main (first.c:157) ==120673== ==120673== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==120673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==120673== by 0x4A58EC8: tsearch (tsearch.c:290) ==120673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==120673== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==120673== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==120673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120673== by 0x497836B: setlocale (setlocale.c:337) ==120673== by 0x109054: main (first.c:157) ==120673== ==120673== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==120673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==120673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120673== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==120673== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==120673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120673== by 0x497836B: setlocale (setlocale.c:337) ==120673== by 0x109054: main (first.c:157) ==120673== ==120673== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==120673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==120673== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==120673== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==120673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120673== by 0x497836B: setlocale (setlocale.c:337) ==120673== by 0x109054: main (first.c:157) ==120673== ==120673== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==120673== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==120673== by 0x48DC163: Curl_open (url.c:510) ==120673== by 0x487CCEF: curl_easy_init (easy.c:368) ==120673== by 0x109098: UnknownInlinedFun (lib576.c:103) ==120673== by 0x109098: main (first.c:178) ==120673== ==120673== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==120673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120673== by 0x4A58EC8: __tsearch (tsearch.c:337) ==120673== by 0x4A58EC8: tsearch (tsearch.c:290) ==120673== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==120673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120673== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==120673== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==120673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120673== by 0x497836B: setlocale (setlocale.c:337) ==120673== by 0x109054: main (first.c:157) ==120673== ==120673== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==120673== at 0x4842788: malloc (vg_replace_malloc.c:446) ==120673== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==120673== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==120673== by 0x496C9A2: add_alias (gconv_conf.c:178) ==120673== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==120673== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==120673== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==120673== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==120673== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==120673== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==120673== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==120673== by 0x497836B: setlocale (setlocale.c:337) ==120673== by 0x109054: main (first.c:157) ==120673== === End of file valgrind1114 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/7/valgrind1121 ../src/curl -q --output log/7/curl1121.out --include --trace-ascii log/7/trace1121 --trace-time -H "Host: host1" -H "Host: host2" -H "Host: host3" http://127.0.0.1:35853/1121 > log/7/stdout1121 2> log/7/stderr1121 1121: 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 1121 === Start of file server.cmd Testnum 1121 === End of file server.cmd === Start of file valgrind1121 ==121063== ==121063== Process terminating with default action of signal 4 (SIGILL) ==121063== Illegal opcode at address 0x10B06D ==121063== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121063== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1121 * starts no server test 1132...[Verify memory #include files in libcurl's C source files] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1132.pl /startdir/src/curl/tests/../lib > log/7/stdout1132 2> log/7/stderr1132 valgrind SKIPPED -------e--- OK (993 out of 1513, remaining: 00:41, took 0.026s, duration: 01:19) 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/10/valgrind1125 ../src/curl -q --output log/10/curl1125.out --include --trace-ascii log/10/trace1125 --trace-time http://127.0.0.1:36145/1125 --tr-encoding -H CMD (33792): ../libtool --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/valgrind1122 ../src/curl -q --output log/9/curl1122.out --include --trace-ascii log/9/trace1122 --trace-time http://127.0.0.1:40247/1122 --tr-encoding > log/9/stdout1122 2> log/9/stderr1122 CMD (33792): ../libtool --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/valgrind1123 ../src/curl -q --output log/2/curl1123.out --include --trace-ascii log/2/trace1123 --trace-time http://127.0.0.1:44205/1123 --tr-encoding > log/2/stdout1123 2> log/2/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/3/valgrind1124 ../src/curl -q --output log/3/curl1124.out --include --trace-ascii log/3/trace1124 --trace-time http://127.0.0.1:46313/1124 --tr-encoding > log/3/stdout1124 2> log/3/stderr1124 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl /startdir/src/curl/tests/.. > log/4/stdout1135 2> log/4/stderr1135 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1139.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/4/stdout1139 2> log/4/stderr1139 CMD (0): perl -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/4/stdout1140 2> log/4/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/8/valgrind1127 ../src/curl -q --output log/8/curl1127.out --include --trace-ascii log/8/trace1127 --trace-time http://127.0.0.1:33791/1127 -z "dec 12 12:00:00 1999 GMT" > log/8/stdout1127 2> log/8/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/1/valgrind1128 ../src/curl -q --include --trace-ascii log/1/trace1128 --trace-time http://127.0.0.1:39283/1128 http://127.0.0.1:39283/11280001 -z "dec 12 12:00:00 1999 GMT" > log/1/stdout1128 2> log/1/stderr1128 "Connection: close" > log/10/stdout1125 2> log/10/stderr1125 1125: 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 1125 === Start of file server.cmd Testnum 1125 === End of file server.cmd === Start of file valgrind1125 ==121120== ==121120== Process terminating with default action of signal 4 (SIGILL) ==121120== Illegal opcode at address 0x10B06D ==121120== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121120== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1125 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/4/valgrind1126 ../src/curl -q --output log/4/curl1126.out --include --trace-ascii log/4/trace1126 --trace-time http://127.0.0.1:41947/1126 -z "dec 12 12:00:00 1999 GMT" > log/4/stdout1126 2> log/4/stderr1126 1126: 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 1126 === Start of file server.cmd Testnum 1126 === End of file server.cmd === Start of file valgrind1126 ==121118== ==121118== Process terminating with default action of signal 4 (SIGILL) ==121118== Illegal opcode at address 0x10B06D ==121118== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121118== by 0x10B06D: 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/9/valgrind1122 ../src/curl -q --output log/9/curl1122.out --include --trace-ascii log/9/trace1122 --trace-time http://127.0.0.1:40247/1122 --tr-encoding > log/9/stdout1122 2> log/9/stderr1122 1122: 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 1122 === Start of file server.cmd Testnum 1122 === End of file server.cmd === Start of file valgrind1122 ==121119== ==121119== Process terminating with default action of signal 4 (SIGILL) ==121119== Illegal opcode at address 0x10B06D ==121119== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121119== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1122 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/2/valgrind1123 ../src/curl -q --output log/2/curl1123.out --include --trace-ascii log/2/trace1123 --trace-time http://127.0.0.1:44205/1123 --tr-encoding > log/2/stdout1123 2> log/2/stderr1123 1123: 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 1123 === Start of file server.cmd Testnum 1123 === End of file server.cmd === Start of file valgrind1123 ==121150== ==121150== Process terminating with default action of signal 4 (SIGILL) ==121150== Illegal opcode at address 0x10B06D ==121150== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121150== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1123 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/3/valgrind1124 ../src/curl -q --output log/3/curl1124.out --include --trace-ascii log/3/trace1124 --trace-time http://127.0.0.1:46313/1124 --tr-encoding > log/3/stdout1124 2> log/3/stderr1124 1124: 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 1124 === Start of file server.cmd Testnum 1124 === End of file server.cmd === Start of file valgrind1124 ==121121== ==121121== Process terminating with default action of signal 4 (SIGILL) ==121121== Illegal opcode at address 0x10B06D ==121121== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121121== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1124 * starts no server test 1135...[Verify CURL_EXTERN order] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl /startdir/src/curl/tests/.. > log/4/stdout1135 2> log/4/stderr1135 valgrind SKIPPED s------e--- OK (996 out of 1513, remaining: 00:41, took 0.032s, duration: 01:19) * starts no server test 1139...[Verify that all libcurl options have man pages] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1139.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/4/stdout1139 2> log/4/stderr1139 valgrind SKIPPED -r-----e--- OK (1000 out of 1513, remaining: 00:40, took 0.030s, duration: 01:19) * starts no server test 1140...[Verify the nroff of manpages] perl -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/4/stdout1140 2> log/4/stderr1140 valgrind SKIPPED s------e--- OK (1001 out of 1513, remaining: 00:40, took 0.044s, duration: 01:19) 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/8/valgrind1127 ../src/curl -q --output log/8/curl1127.out --include --trace-ascii log/8/trace1127 --trace-time http://127.0.0.1:33791/1127 -z "dec 12 12:00:00 1999 GMT" > log/8/stdout1127 2> log/8/stderr1127 1127: 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 1127 === Start of file server.cmd Testnum 1127 === End of file server.cmd === Start of file valgrind1127 ==121361== ==121361== Process terminating with default action of signal 4 (SIGILL) ==121361== Illegal opcode at address 0x10B06D ==121361== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121361== by 0x10B06D: 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/5/valgrind1130 ../src/curl -q --include --trace-ascii log/5/trace1130 --trace-time -d @log/5/file1130 http://127.0.0.1:33519/1130 http://127.0.0.1:33519/11300001 -H "Expect: 100-continue" --expect100-timeout 99 > log/5/stdout1130 2> log/5/stderr1130 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/1/valgrind1128 ../src/curl -q --include --trace-ascii log/1/trace1128 --trace-time http://127.0.0.1:39283/1128 http://127.0.0.1:39283/11280001 -z "dec 12 12:00:00 1999 GMT" > log/1/stdout1128 2> log/1/stderr1128 1128: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:01.804578487 +0200 +++ log/1/check-generated 2024-05-23 11:17:01.804578487 +0200 @@ -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/1/ 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 server.cmd Testnum 1128 === End of file server.cmd === Start of file valgrind1128 ==121414== ==121414== Process terminating with default action of signal 4 (SIGILL) ==121414== Illegal opcode at address 0x10B06D ==121414== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121414== by 0x10B06D: 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/6/valgrind1129 ../src/curl -q --include --trace-ascii log/6/trace1129 --trace-time -d @log/6/file1129 --expect100-timeout 99 http://127.0.0.1:41583/1129 http://127.0.0.1:41583/11290001 > log/6/stdout1129 2> log/6/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/12/valgrind1131 ../src/curl -q --include --trace-ascii log/12/trace1131 --trace-time -H "Expect: 100-continue" -T log/12/file1131 http://127.0.0.1:44175/1131 -T log/12/file1131 http://127.0.0.1:44175/11310001 --expect100-timeout 99 > log/12/stdout1131 2> log/12/stderr1131 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-time -d @log/5/file1130 http://127.0.0.1:33519/1130 http://127.0.0.1:33519/11300001 -H "Expect: 100-continue" --expect100-timeout 99 > log/5/stdout1130 2> log/5/stderr1130 1130: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:01.814578692 +0200 +++ log/5/check-generated 2024-05-23 11:17:01.814578692 +0200 @@ -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 file1130 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX === End of file file1130 === Start of file server.cmd skip: 100 Testnum 1130 === End of file server.cmd === Start of file valgrind1130 ==121425== ==121425== Process terminating with default action of signal 4 (SIGILL) ==121425== Illegal opcode at address 0x10B06D ==121425== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121425== by 0x10B06D: 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/6/valgrind1129 ../src/curl -q --include --trace-ascii log/6/trace1129 --trace-time -d @log/6/file1129 --expect100-timeout 99 http://127.0.0.1:41583/1129 http://127.0.0.1:41583/11290001 > log/6/stdout1129 2> log/6/stderr1129 1129: stdout FAILED: --- log/6/check-expected 2024-05-23 11:17:01.824578899 +0200 +++ log/6/check-generated 2024-05-23 11:17:01.824578899 +0200 @@ -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/6/ 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 file1129 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx === End of file file1129 === Start of file server.cmd skip: 1053700 Testnum 1129 === End of file server.cmd === Start of file valgrind1129 ==121427== ==121427== Process terminating with default action of signal 4 (SIGILL) ==121427== Illegal opcode at address 0x10B06D ==121427== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121427== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1129 CMD (33792): ../libtool --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/valgrind1137 ../src/curl -q --output log/2/curl1137.out --include --trace-ascii log/2/trace1137 --trace-time ftp://127.0.0.1:42239/1137 --ignore-content-length > log/2/stdout1137 2> log/2/stderr1137 CMD (33792): ../libtool --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/valgrind1133 ../src/curl -q --output log/7/curl1133.out --include --trace-ascii log/7/trace1133 --trace-time http://127.0.0.1:35853/we/want/1133 -F "file=@\"log/7/test1133,and;.txt\";type=mo/foo;filename=\"faker,and;.txt\"" -F 'file2=@"log/7/test1133,and;.txt"' -F 'file3=@"log/7/test1133,and;.txt";type=m/f,"log/7/test1133,and;.txt"' -F a="{\"field1\":\"value1\",\"field2\":\"value2\"}" -F 'b=" \\value1;type=\"whatever\" "; type=text/foo; charset=utf-8 ; filename=param_b' > log/7/stdout1133 2> log/7/stderr1133 CMD (33792): ../libtool --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/valgrind1138 ../src/curl -q --output log/3/curl1138.out --include --trace-ascii log/3/trace1138 --trace-time http://127.0.0.1:46313/we/are/all/twits/1138 -L > log/3/stdout1138 2> log/3/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/9/valgrind1136 ../src/curl -q --output log/9/curl1136.out --include --trace-ascii log/9/trace1136 --trace-time http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com/1136 -b none -c log/9/jar1136.txt -x 127.0.0.1:40247 > log/9/stdout1136 2> log/9/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/12/valgrind1131 ../src/curl -q --include --trace-ascii log/12/trace1131 --trace-time -H "Expect: 100-continue" -T log/12/file1131 http://127.0.0.1:44175/1131 -T log/12/file1131 http://127.0.0.1:44175/11310001 --expect100-timeout 99 > log/12/stdout1131 2> log/12/stderr1131 1131: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:01.841245906 +0200 +++ log/12/check-generated 2024-05-23 11:17:01.841245906 +0200 @@ -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/12/ 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 file1131 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX === End of file file1131 === Start of file server.cmd skip: 100 Testnum 1131 === End of file server.cmd === Start of file valgrind1131 ==121448== ==121448== Process terminating with default action of signal 4 (SIGILL) ==121448== Illegal opcode at address 0x10B06D ==121448== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121448== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1131 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/2/valgrind1137 ../src/curl -q --output log/2/curl1137.out --include --trace-ascii log/2/trace1137 --trace-time ftp://127.0.0.1:42239/1137 --ignore-content-length > log/2/stdout1137 2> log/2/stderr1137 1137: 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 1137 === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1137 === End of file server.cmd === Start of file valgrind1137 ==121665== ==121665== Process terminating with default action of signal 4 (SIGILL) ==121665== Illegal opcode at address 0x10B06D ==121665== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121665== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1137 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/7/valgrind1133 ../src/curl -q --output log/7/curl1133.out --include --trace-ascii log/7/trace1133 --trace-time http://127.0.0.1:35853/we/want/1133 -F "file=@\"log/7/test1133,and;.txt\";type=mo/foo;filename=\"faker,and;.txt\"" -F 'file2=@"log/7/test1133,and;.txt"' -F 'file3=@"log/7/test1133,and;.txt";type=m/f,"log/7/test1133,and;.txt"' -F a="{\"field1\":\"value1\",\"field2\":\"value2\"}" -F 'b=" \\value1;type=\"whatever\" "; type=text/foo; charset=utf-8 ; filename=param_b' > log/7/stdout1133 2> log/7/stderr1133 1133: 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 1133 === Start of file server.cmd Testnum 1133 === End of file server.cmd === 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 ==121625== ==121625== Process terminating with default action of signal 4 (SIGILL) ==121625== Illegal opcode at address 0x10B06D ==121625== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121625== by 0x10B06D: 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/3/valgrind1138 ../src/curl -q --output log/3/curl1138.out --include --trace-ascii log/3/trace1138 --trace-time http://127.0.0.1:46313/we/are/all/twits/1138 -L > log/3/stdout1138 2> log/3/stderr1138 1138: 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 1138 === Start of file server.cmd Testnum 1138 === End of file server.cmd === Start of file valgrind1138 ==121712== ==121712== Process terminating with default action of signal 4 (SIGILL) ==121712== Illegal opcode at address 0x10B06D ==121712== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121712== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1138 CMD (33792): ../libtool --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/valgrind1134 ../src/curl -q --output log/10/curl1134.out --include --trace-ascii log/10/trace1134 --trace-time http://127.0.0.1:36145/1134 -u user1:password1 --next http://127.0.0.1:36145/11340001 -u 2user:password2 > log/10/stdout1134 2> log/10/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/4/valgrind1141 ../src/curl -q --output log/4/curl1141.out --include --trace-ascii log/4/trace1141 --trace-time 127.0.0.1:41947/want/1141 -L -x http://127.0.0.1:41947 > log/4/stdout1141 2> log/4/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/8/valgrind1142 ../src/curl -q --output log/8/curl1142.out --include --trace-ascii log/8/trace1142 --trace-time 127.0.0.1:33791/want/1142 -L -x http://127.0.0.1:33791 > log/8/stdout1142 2> log/8/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/1/valgrind1143 ../src/curl -q --output log/1/curl1143.out --include --trace-ascii log/1/trace1143 --trace-time http:/127.0.0.1:39283/want/1143 > log/1/stdout1143 2> log/1/stderr1143 CMD (33792): ../libtool --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/valgrind1144 ../src/curl -q --output log/5/curl1144.out --include --trace-ascii log/5/trace1144 --trace-time -I http://127.0.0.1:33519/1144 --http0.9 > log/5/stdout1144 2> log/5/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/6/valgrind1145 ../src/curl -q --output log/6/curl1145.out --include --trace-ascii log/6/trace1145 --trace-time file://bad-host/startdir/src/build-curl/tests/log/6/test1145.txt > log/6/stdout1145 2> log/6/stderr1145 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/9/valgrind1136 ../src/curl -q --output log/9/curl1136.out --include --trace-ascii log/9/trace1136 --trace-time http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com/1136 -b none -c log/9/jar1136.txt -x 127.0.0.1:40247 > log/9/stdout1136 2> log/9/stderr1136 1136: data FAILED: --- log/9/check-expected 2024-05-23 11:17:02.054583622 +0200 +++ log/9/check-generated 2024-05-23 11:17:02.054583622 +0200 @@ -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/9/ 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 server.cmd Testnum 1136 === End of file server.cmd === Start of file valgrind1136 ==121666== ==121666== Process terminating with default action of signal 4 (SIGILL) ==121666== Illegal opcode at address 0x10B06D ==121666== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121666== by 0x10B06D: 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/10/valgrind1134 ../src/curl -q --output log/10/curl1134.out --include --trace-ascii log/10/trace1134 --trace-time http://127.0.0.1:36145/1134 -u user1:password1 --next http://127.0.0.1:36145/11340001 -u 2user:password2 > log/10/stdout1134 2> log/10/stderr1134 1134: 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 1134 === Start of file server.cmd connection-monitor Testnum 1134 === End of file server.cmd === Start of file valgrind1134 ==121646== ==121646== Process terminating with default action of signal 4 (SIGILL) ==121646== Illegal opcode at address 0x10B06D ==121646== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121646== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1134 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/4/valgrind1141 ../src/curl -q --output log/4/curl1141.out --include --trace-ascii log/4/trace1141 --trace-time 127.0.0.1:41947/want/1141 -L -x http://127.0.0.1:41947 > log/4/stdout1141 2> log/4/stderr1141 1141: 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 1141 === Start of file server.cmd Testnum 1141 === End of file server.cmd === Start of file valgrind1141 ==121879== ==121879== Process terminating with default action of signal 4 (SIGILL) ==121879== Illegal opcode at address 0x10B06D ==121879== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121879== by 0x10B06D: 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/8/valgrind1142 ../src/curl -q --output log/8/curl1142.out --include --trace-ascii log/8/trace1142 --trace-time 127.0.0.1:33791/want/1142 -L -x http://127.0.0.1:33791 > log/8/stdout1142 2> log/8/stderr1142 1142: 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 1142 === Start of file server.cmd Testnum 1142 === End of file server.cmd === Start of file valgrind1142 ==121932== ==121932== Process terminating with default action of signal 4 (SIGILL) ==121932== Illegal opcode at address 0x10B06D ==121932== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121932== by 0x10B06D: 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/1/valgrind1143 ../src/curl -q --output log/1/curl1143.out --include --trace-ascii log/1/trace1143 --trace-time http:/127.0.0.1:39283/want/1143 > log/1/stdout1143 2> log/1/stderr1143 1143: 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 1143 === Start of file server.cmd Testnum 1143 === End of file server.cmd === Start of file valgrind1143 ==121987== ==121987== Process terminating with default action of signal 4 (SIGILL) ==121987== Illegal opcode at address 0x10B06D ==121987== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==121987== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1143 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/5/valgrind1144 ../src/curl -q --output log/5/curl1144.out --include --trace-ascii log/5/trace1144 --trace-time -I http://127.0.0.1:33519/1144 --http0.9 > log/5/stdout1144 2> log/5/stderr1144 1144: 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 1144 === Start of file server.cmd Testnum 1144 === End of file server.cmd === Start of file valgrind1144 ==122015== ==122015== Process terminating with default action of signal 4 (SIGILL) ==122015== Illegal opcode at address 0x10B06D ==122015== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122015== by 0x10B06D: 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/6/valgrind1145 ../src/curl -q --output log/6/curl1145.out --include --trace-ascii log/6/trace1145 --trace-time file://bad-host/startdir/src/build-curl/tests/log/6/test1145.txt > log/6/stdout1145 2> log/6/stderr1145 curl returned 132, when expecting 3 1145: exit FAILED == Contents of files in the log/6/ dir after test 1145 === 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 ==122030== ==122030== Process terminating with default action of signal 4 (SIGILL) ==122030== Illegal opcode at address 0x10B06D ==122030== at 0x10B06D: UnknownInlinedFuCMD (33792): ../libtool --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/valgrind1146 ../src/curl -q --output log/12/curl1146.out --trace-ascii log/12/trace1146 --trace-time --proto-default file /startdir/src/build-curl/tests/log/12/test1146.txt > log/12/stdout1146 2> log/12/stderr1146 n (string_fortified.h:59) ==122030== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1145 CMD (33792): ../libtool --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/valgrind1148 ../src/curl -q --output log/7/curl1148.out --include --trace-ascii log/7/trace1148 --trace-time http://127.0.0.1:35853/1148 -# --stderr log/7/stderrlog1148 > log/7/stdout1148 2> log/7/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/9/valgrind1150 ../src/curl -q --output log/9/curl1150.out --include --trace-ascii log/9/trace1150 --trace-time --proxy http://127.0.0.1:40247 http://test.remote.example.com.1150:150/path http://test.remote.example.com.1150:1234/path/ > log/9/stdout1150 2> log/9/stderr1150 CMD (33792): ../libtool --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/valgrind1149 ../src/curl -q --output log/3/curl1149.out --include --trace-ascii log/3/trace1149 --trace-time ftp://127.0.0.1:45493/list/this/path/1149/ --ftp-method multicwd --next ftp://127.0.0.1:45493/list/this/path/1149/ --ftp-method nocwd > log/3/stdout1149 2> log/3/stderr1149 CMD (33792): ../libtool --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/valgrind1147 ../src/curl -q --output log/2/curl1147.out --include --trace-ascii log/2/trace1147 --trace-time http://127.0.0.1:44205/1147 -H @log/2/heads1147.txt > log/2/stdout1147 2> log/2/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/10/valgrind1151 ../src/curl -q --output log/10/curl1151.out --include --trace-ascii log/10/trace1151 --trace-time http://127.0.0.1:36145/1151 -c log/10/cookies1151.txt > log/10/stdout1151 2> log/10/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/4/valgrind1152 ../src/curl -q --output log/4/curl1152.out --include --trace-ascii log/4/trace1152 --trace-time ftp://127.0.0.1:36137/test-1152/ > log/4/stdout1152 2> log/4/stderr1152 CMD (33792): ../libtool --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/valgrind1153 ../src/curl -q --output log/8/curl1153.out --include --trace-ascii log/8/trace1153 --trace-time ftp://127.0.0.1:43509/test-1153/ > log/8/stdout1153 2> log/8/stderr1153 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/12/valgrind1146 ../src/curl -q --output log/12/curl1146.out --trace-ascii log/12/trace1146 --trace-time --proto-default file /startdir/src/build-curl/tests/log/12/test1146.txt > log/12/stdout1146 2> log/12/stderr1146 1146: data FAILED: --- log/12/check-expected 2024-05-23 11:17:02.444591632 +0200 +++ log/12/check-generated 2024-05-23 11:17:02.444591632 +0200 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/12/ 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 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 ==122044== ==122044== Process terminating with default action of signal 4 (SIGILL) ==122044== Illegal opcode at address 0x10B06D ==122044== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122044== by 0x10B06D: 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/7/valgrind1148 ../src/curl -q --output log/7/curl1148.out --include --trace-ascii log/7/trace1148 --trace-time http://127.0.0.1:35853/1148 -# --stderr log/7/stderrlog1148 > log/7/stdout1148 2> log/7/stderr1148 1148: 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 1148 === Start of file server.cmd Testnum 1148 === End of file server.cmd === Start of file valgrind1148 ==122191== ==122191== Process terminating with default action of signal 4 (SIGILL) ==122191== Illegal opcode at address 0x10B06D ==122191== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122191== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1148 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/9/valgrind1150 ../src/curl -q --output log/9/curl1150.out --include --trace-ascii log/9/trace1150 --trace-time --proxy http://127.0.0.1:40247 http://test.remote.example.com.1150:150/path http://test.remote.example.com.1150:1234/path/ > log/9/stdout1150 2> log/9/stderr1150 1150: 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 1150 === Start of file server.cmd Testnum 1150 === End of file server.cmd === Start of file valgrind1150 ==122222== ==122222== Process terminating with default action of signal 4 (SIGILL) ==122222== Illegal opcode at address 0x10B06D ==122222== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122222== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1150 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/3/valgrind1149 ../src/curl -q --output log/3/curl1149.out --include --trace-ascii log/3/trace1149 --trace-time ftp://127.0.0.1:45493/list/this/path/1149/ --ftp-method multicwd --next ftp://127.0.0.1:45493/list/this/path/1149/ --ftp-method nocwd > log/3/stdout1149 2> log/3/stderr1149 1149: 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 1149 === Start of file server.cmd Testnum 1149 === End of file server.cmd === Start of file valgrind1149 ==122192== ==122192== Process terminating with default action of signal 4 (SIGILL) ==122192== Illegal opcode at address 0x10B06D ==122192== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122192== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1149 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/2/valgrind1147 ../src/curl -q --output log/2/curl1147.out --include --trace-ascii log/2/trace1147 --trace-time http://127.0.0.1:44205/1147 -H @log/2/heads1147.txt > log/2/stdout1147 2> log/2/stderr1147 1147: 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 1147 === 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 server.cmd Testnum 1147 === End of file server.cmd === Start of file valgrind1147 ==122190== ==122190== Process terminating with default action of signal 4 (SIGILL) ==122190== Illegal opcode at address 0x10B06D ==122190== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122190== by 0x10B06D: 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/10/valgrind1151 ../src/curl -q --output log/10/curl1151.out --include --trace-ascii log/10/trace1151 --trace-time http://127.0.0.1:36145/1151 -c log/10/cookies1151.txt > log/10/stdout1151 2> log/10/stderr1151 1151: 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 1151 === Start of file server.cmd Testnum 1151 === End of file server.cmd === Start of file valgrind1151 ==122326== ==122326== Process terminating with default action of signal 4 (SIGILL) ==122326== Illegal opcode at address 0x10B06D ==122326== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122326== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1151 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/4/valgrind1152 ../src/curl -q --output log/4/curl1152.out --include --trace-ascii log/4/trace1152 --trace-time ftp://127.0.0.1:36137/test-1152/ > log/4/stdout1152 2> log/4/stderr1152 1152: 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 1152 === Start of file server.cmd REPLY PWD 257 "just one Testnum 1152 === End of file server.cmd === Start of file valgrind1152 ==122430== ==122430== Process terminating with default action of signal 4 (SIGILL) ==122430== Illegal opcode at address 0x10B06D ==122430== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122430== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1152 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/8/valgrind1153 ../src/curl -q --output log/8/curl1153.out --include --trace-ascii log/8/trace1153 --trace-time ftp://127.0.0.1:43509/test-1153/ > log/8/stdout1153 2> log/8/stderr1153 1153: 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 CMD (33792): ../libtool --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/valgrind1155 ../src/curl -q --output log/5/curl1155.out --include --trace-ascii log/5/trace1155 --trace-time http://127.0.0.1:33519/1155 -c log/5/cookies1155.txt > log/5/stdout1155 2> log/5/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/1/valgrind1154 ../src/curl -q --output log/1/curl1154.out --include --trace-ascii log/1/trace1154 --trace-time http://127.0.0.1:39283/1154 > log/1/stdout1154 2> log/1/stderr1154 CMD (33792): ../libtool --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/valgrind1157 ../src/curl -q --output log/12/curl1157.out --include --trace-ascii log/12/trace1157 --trace-time http://127.0.0.1:44175/1157 -H @log/12/heads1157.txt > log/12/stdout1157 2> log/12/stderr1157 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1165.pl /startdir/src/curl/tests/.. > log/5/stdout1165 2> log/5/stderr1165 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1167.pl /startdir/src/curl/tests/.. > log/12/stdout1167 2> log/12/stderr1167 CMD (31488): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/runtests.pl -L /startdir/src/build-curl/tests/log/12/test1169-library.pl > log/12/stdout1169 2> log/12/stderr1169 CMD (33792): ../libtool --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/valgrind1160 ../src/curl -q --output log/3/curl1160.out --include --trace-ascii log/3/trace1160 --trace-time http://127.0.0.1:46313/1160 -c log/3/cookies1160.txt > log/3/stdout1160 2> log/3/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/7/valgrind1158 ../src/curl -q --output log/7/curl1158.out --include --trace-ascii log/7/trace1158 --trace-time http://127.0.0.1:35853/we/want/1158 -F "file=@\"log/7/test1158\\\".txt\";type=mo/foo;filename=\"test1158\\\".txt\"" -F 'file2=@"log/7/test1158\".txt"' -F 'file3=@"log/7/test1158\".txt";type=m/f,"log/7/test1158\".txt"' > log/7/stdout1158 2> log/7/stderr1158 CMD (33792): ../libtool --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/valgrind1159 ../src/curl -q --include --trace-ascii log/9/trace1159 --trace-time http://127.0.0.1:40247/we/want/our/1159 -w '%{redirect_url}\n' > log/9/stdout1159 2> log/9/stderr1159 1153 === Start of file server.cmd REPLY PWD 257 "/""hello""" Testnum 1153 === End of file server.cmd === Start of file valgrind1153 ==122467== ==122467== Process terminating with default action of signal 4 (SIGILL) ==122467== Illegal opcode at address 0x10B06D ==122467== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122467== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1153 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/5/valgrind1155 ../src/curl -q --output log/5/curl1155.out --include --trace-ascii log/5/trace1155 --trace-time http://127.0.0.1:33519/1155 -c log/5/cookies1155.txt > log/5/stdout1155 2> log/5/stderr1155 1155: 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 1155 === Start of file server.cmd Testnum 1155 === End of file server.cmd === Start of file valgrind1155 ==122536== ==122536== Process terminating with default action of signal 4 (SIGILL) ==122536== Illegal opcode at address 0x10B06D ==122536== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122536== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1155 test 1154...[HTTP GET with 100K (too long) response 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/valgrind1154 ../src/curl -q --output log/1/curl1154.out --include --trace-ascii log/1/trace1154 --trace-time http://127.0.0.1:39283/1154 > log/1/stdout1154 2> log/1/stderr1154 1154: 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 1154 === Start of file server.cmd Testnum 1154 === End of file server.cmd === Start of file valgrind1154 ==122532== ==122532== Process terminating with default action of signal 4 (SIGILL) ==122532== Illegal opcode at address 0x10B06D ==122532== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122532== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1154 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/12/valgrind1157 ../src/curl -q --output log/12/curl1157.out --include --trace-ascii log/12/trace1157 --trace-time http://127.0.0.1:44175/1157 -H @log/12/heads1157.txt > log/12/stdout1157 2> log/12/stderr1157 1157: 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 1157 === Start of file server.cmd Testnum 1157 === End of file server.cmd === Start of file valgrind1157 ==122657== ==122657== Process terminating with default action of signal 4 (SIGILL) ==122657== Illegal opcode at address 0x10B06D ==122657== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122657== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1157 * starts no server test 1165...[Verify configure.ac and source code CURL_DISABLE_-sync] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1165.pl /startdir/src/curl/tests/.. > log/5/stdout1165 2> log/5/stderr1165 valgrind SKIPPED -------e--- OK (1026 out of 1513, remaining: 00:38, took 0.049s, duration: 01:21) * starts no server test 1167...[Verify curl prefix of public symbols in header files] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1167.pl /startdir/src/curl/tests/.. > log/12/stdout1167 2> log/12/stderr1167 valgrind SKIPPED -------e--- OK (1028 out of 1513, remaining: 00:38, took 0.178s, duration: 01:21) * starts no server test 1169...[Verify that runtests.pl accepts an -L option] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/runtests.pl -L /startdir/src/build-curl/tests/log/12/test1169-library.pl > log/12/stdout1169 2> log/12/stderr1169 valgrind SKIPPED -------e--- OK (1030 out of 1513, remaining: 00:38, took 0.083s, duration: 01:21) 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/3/valgrind1160 ../src/curl -q --output log/3/curl1160.out --include --trace-ascii log/3/trace1160 --trace-time http://127.0.0.1:46313/1160 -c log/3/cookies1160.txt > log/3/stdout1160 2> log/3/stderr1160 1160: 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 1160 === Start of file server.cmd Testnum 1160 === End of file server.cmd === Start of file valgrind1160 ==122730== ==122730== Process terminating with default action of signal 4 (SIGILL) ==122730== Illegal opcode at address 0x10B06D ==122730== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122730== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1160 prechecked /usr/bin/perl -e "print 'Test requires a system supporting double quotes in file names' if ($^O eq 'msys');" 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/7/valgrind1158 ../src/curl -q --output log/7/curl1158.out --include --trace-ascii log/7/trace1158 --trace-time http://127.0.0.1:35853/we/want/1158 -F "file=@\"log/7/test1158\\\".txt\";type=mo/foo;filename=\"test1158\\\".txt\"" -F 'file2=@"log/7/test1158\".txt"' -F 'file3=@"log/7/test1158\".txt";type=m/f,"log/7/test1158\".txt"' > log/7/stdout1158 2> log/7/stderr1158 1158: 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 1158 === Start of file server.cmd Testnum 1158 === End of file server.cmd === Start of file test1158".txt foo bar This is a bar foo bar foo === End of file test1158".txt === Start of file valgrind1158 ==122729== ==122729== Process terminating with default action of signal 4 (SIGILL) ==122729== Illegal opcode at address 0x10B06D ==122729== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122729== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1158 CMD (33792): ../libtool --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/valgrind1161 ../src/curl -q --output log/2/curl1161.out --include --trace-ascii log/2/trace1161 --trace-time http://127.0.0.1:44205/1161 -c log/2/cookies1161.txt > log/2/stdout1161 2> log/2/stderr1161 CMD (33792): ../libtool --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/valgrind1164 ../src/curl -q --output log/8/curl1164.out --include --trace-ascii log/8/trace1164 --trace-time http://127.0.0.1:33791/1164 -w '%{size_download}\n' --http0.9 > log/8/stdout1164 2> log/8/stderr1164 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/9/valgrind1159 ../src/curl -q --include --trace-ascii log/9/trace1159 --trace-time http://127.0.0.1:40247/we/want/our/1159 -w '%{redirect_url}\n' > log/9/stdout1159 2> log/9/stderr1159 1159: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:03.304609295 +0200 +++ log/9/check-generated 2024-05-23 11:17:03.304609295 +0200 @@ -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/9/ 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 server.cmd Testnum 1159 === End of file server.cmd === Start of file valgrind1159 ==122759== ==122759== Process terminating with default action of signal 4 (SIGILL) ==122759== Illegal opcode at address 0x10B06D ==122759== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122759== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1159 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/2/valgrind1161 ../src/curl -q --output log/2/curl1161.out --include --trace-ascii log/2/trace1161 --trace-time http://127.0.0.1:44205/1161 -c log/2/cookies1161.txt > log/2/stdout1161 2> log/2/stderr1161 1161: 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 1161 === Start of file server.cmd Testnum 1161 === End of file server.cmd === Start of file valgrind1161 ==122760== ==122760== Process terminating with default action of signal 4 (SIGILL) ==122760== Illegal opcode at address 0x10B06D ==122760== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==122760== by 0x10B06D: 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/6/valgrind1156 ./libtest/lib1156 http://127.0.0.1:41583/want/1156 > log/6/stdout1156 2> log/6/stderr1156 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/8/valgrind1164 ../src/curl -q --output log/8/curl1164.out --include --trace-ascii log/8/trace1164 --trace-time http://127.0.0.1:33791/1164 -w '%{size_download}\n' --http0.9 > log/8/stdout1164 2> log/8/stderr1164 1164: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:03.384610939 +0200 +++ log/8/check-generated 2024-05-23 11:17:03.384610939 +0200 @@ -1 +0,0 @@ -208[LF] == Contents of files in the log/8/ dir after test 1164 === Start of file check-expected 208[LF] === End of file check-expected === Start of file server.cmd Testnum 1164 === End of file server.cmd === Start of file valgrind1164 ==123000== ==123000== Process terminating with default action of signal 4 (SIGILL) ==123000== Illegal opcode at address 0x10B06D ==123000== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123000== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1164 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1175.pl /startdir/src/curl/tests > log/8/stdout1175 2> log/8/stderr1175 CMD (0): perl -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/9/stdout1173 2> log/9/stderr1173 CMD (0): perl -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/8/stdout1177 2> log/8/stderr1177 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/6/valgrind1156 ./libtest/lib1156 http://127.0.0.1:41583/want/1156 > log/6/stdout1156 2> log/6/stderr1156 1156: stdout FAILED: --- log/6/check-expected 2024-05-23 11:17:03.401277947 +0200 +++ log/6/check-generated 2024-05-23 11:17:03.401277947 +0200 @@ -1 +0,0 @@ -0[LF] == Contents of files in the log/6/ dir after test 1156 === Start of file check-expected 0[LF] === End of file check-expected === Start of file server.cmd Testnum 1156 === End of file server.cmd === Start of file stderr1156 URL: http://127.0.0.1:41583/want/1156 === End of file stderr1156 === Start of file valgrind1156 ==122560== ==122560== Process terminating with default action of signal 4 (SIGILL) ==122560== Illegal opcode at address 0x48DC18B ==122560== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==122560== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==122560== by 0x48DC18B: Curl_open (url.c:519) ==122560== by 0x487CCEF: curl_easy_init (easy.c:368) ==122560== by 0x1090BD: UnknownInlinedFun (lib1156.c:147) ==122560== by 0x1090BD: main (first.c:178) ==122560== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==122560== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122560== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122560== by 0x4A58EC8: tsearch (tsearch.c:290) ==122560== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122560== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122560== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122560== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122560== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==122560== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==122560== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122560== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122560== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122560== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122560== by 0x497836B: setlocale (setlocale.c:337) ==122560== by 0x10905B: main (first.c:157) ==122560== ==122560== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==122560== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122560== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122560== by 0x4A58EC8: tsearch (tsearch.c:290) ==122560== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122560== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==122560== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==122560== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122560== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122560== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122560== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122560== by 0x497836B: setlocale (setlocale.c:337) ==122560== by 0x10905B: main (first.c:157) ==122560== ==122560== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==122560== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122560== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122560== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122560== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122560== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122560== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==122560== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==122560== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122560== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122560== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122560== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122560== by 0x497836B: setlocale (setlocale.c:337) ==122560== by 0x10905B: main (first.c:157) ==122560== ==122560== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==122560== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122560== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122560== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==122560== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==122560== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122560== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122560== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122560== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122560== by 0x497836B: setlocale (setlocale.c:337) ==122560== by 0x10905B: main (first.c:157) ==122560== ==122560== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==122560== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==122560== by 0x48DC163: Curl_open (url.c:510) ==122560== by 0x487CCEF: curl_easy_init (easy.c:368) ==122560== by 0x1090BD: UnknownInlinedFun (lib1156.c:147) ==122560== by 0x1090BD: main (first.c:178) ==122560== ==122560== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==122560== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122560== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122560== by 0x4A58EC8: tsearch (tsearch.c:290) ==122560== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122560== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122560== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122560== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122560== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==122560== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==122560== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122560== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122560== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122560== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122560== by 0x497836B: setlocale (setlocale.c:337) ==122560== by 0x10905B: main (first.c:157) ==122560== ==122560== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==122560== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122560== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122560== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122560== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122560== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122560== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==122560== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==122560== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122560== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122560== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122560== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122560== by 0x497836B: setlocale (setlocale.c:337) ==122560== by 0x10905B: main (first.c:157) ==122560== === End of file valgrind1156 * starts no server test 1175...[Verify that symbols-in-versions and libcurl-errors.3 are in sync] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1175.pl /startdir/src/curl/tests > log/8/stdout1175 2> log/8/stderr1175 valgrind SKIPPED -------e--- OK (1036 out of 1513, remaining: 00:37, took 0.016s, duration: 01:21) * starts no server test 1173...[Man page syntax checks] perl -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/9/stdout1173 2> log/9/stderr1173 valgrind SKIPPED -r-----e--- OK (1034 out of 1513, remaining: 00:37, took 0.115s, duration: 01:21) * starts no server 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/1/valgrind1166 ../src/curl -q --output log/1/curl1166.out --include --trace-ascii log/1/trace1166 --trace-time http://127.0.0.1:39283/want/1166 http://127.0.0.1:39283/want/1166 > log/1/stdout1166 2> log/1/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/5/valgrind1168 ../src/curl -q --output log/5/curl1168.out --include --trace-ascii log/5/trace1168 --trace-time http://127.0.0.1:33519/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/10/valgrind1162 ./libtest/lib576 "ftp://127.0.0.1:33661/fully_simulated/DOS/[*\\s-'tl" > log/10/stdout1162 2> log/10/stderr1162 1177...[Verify that feature names and CURL_VERSION_* in lib and docs are in sync] perl -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/8/stdout1177 2> log/8/stderr1177 valgrind SKIPPED -------e--- OK (1038 out of 1513, remaining: 00:37, took 0.012s, duration: 01:21) 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/1/valgrind1166 ../src/curl -q --output log/1/curl1166.out --include --trace-ascii log/1/trace1166 --trace-time http://127.0.0.1:39283/want/1166 http://127.0.0.1:39283/want/1166 > log/1/stdout1166 2> log/1/stderr1166 1166: 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 1166 === Start of file server.cmd Testnum 1166 === End of file server.cmd === Start of file valgrind1166 ==123073== ==123073== Process terminating with default action of signal 4 (SIGILL) ==123073== Illegal opcode at address 0x10B06D ==123073== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123073== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1166 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-time http://127.0.0.1:33519/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 server.cmd Testnum 1168 === End of file server.cmd === Start of file valgrind1168 ==123120== ==123120== Process terminating with default action of signal 4 (SIGILL) ==123120== Illegal opcode at address 0x10B06D ==123120== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123120== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1168 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/10/valgrind1162 ./libtest/lib576 "ftp://127.0.0.1:33661/fully_simulated/DOS/[*\\s-'tl" > log/10/stdout1162 2> log/10/stderr1162 1162: 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 1162 === Start of file server.cmd Testnum 1162 === End of file server.cmd === Start of file stderr1162 URL: ftp://127.0.0.1:33661/fully_simulated/DOS/[*\s-'tl === End of file stderr1162 === Start of file valgrind1162 ==122806== ==122806== Process terminating with default action of signal 4 (SIGILL) ==122806== Illegal opcode at address 0x48DC18B ==122806== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==122806== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==122806== by 0x48DC18B: Curl_open (url.c:519) ==122806== by 0x487CCEF: curl_easy_init (easy.c:368) ==122806== by 0x109098: UnknownInlinedFun (lib576.c:103) ==122806== by 0x109098: main (first.c:178) ==122806== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==122806== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122806== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122806== by 0x4A58EC8: tsearch (tsearch.c:290) ==122806== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122806== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122806== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122806== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122806== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==122806== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==122806== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122806== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122806== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122806== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122806== by 0x497836B: setlocale (setlocale.c:337) ==122806== by 0x109054: main (first.c:157) ==122806== ==122806== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==122806== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122806== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122806== by 0x4A58EC8: tsearch (tsearch.c:290) ==122806== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122806== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==122806== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==122806== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122806== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122806== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122806== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122806== by 0x497836B: setlocale (setlocale.c:337) ==122806== by 0x109054: main (first.c:157) ==122806== ==122806== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==122806== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122806== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122806== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122806== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122806== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122806== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==122806== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==122806== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122806== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122806== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122806== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122806== by 0x497836B: setlocale (setlocale.c:337) ==122806== by 0x109054: main (first.c:157) ==122806== ==122806== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==122806== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122806== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122806== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==122806== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==122806== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122806== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122806== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122806== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122806== by 0x497836B: setlocale (setlocale.c:337) ==122806== by 0x109054: main (first.c:157) ==122806== ==122806== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==122806== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==122806== by 0x48DC163: Curl_open (url.c:510) ==122806== by 0x487CCEF: curl_easy_init (easy.c:368) ==122806== by 0x109098: UnknownInlinedFun (lib576.c:103) ==122806== by 0x109098: main (first.c:178) ==122806== ==122806== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==122806== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122806== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122806== by 0x4A58EC8: tsearch (tsearch.c:290) ==122806== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122806== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122806== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122806== by 0x496C9A2CMD (1280): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/checksrc.pl log/10/code1185.c > log/10/stdout1185 2> log/10/stderr1185 CMD (33792): ../libtool --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/valgrind1163 ./libtest/lib576 "ftp://127.0.0.1:36137/fully_simulated/DOS/*[][" > log/4/stdout1163 2> log/4/stderr1163 : read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122806== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==122806== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==122806== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122806== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122806== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122806== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122806== by 0x497836B: setlocale (setlocale.c:337) ==122806== by 0x109054: main (first.c:157) ==122806== ==122806== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==122806== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122806== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122806== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122806== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122806== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122806== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==122806== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==122806== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122806== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122806== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122806== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122806== by 0x497836B: setlocale (setlocale.c:337) ==122806== by 0x109054: main (first.c:157) ==122806== === End of file valgrind1162 * starts no server test 1185...[checksrc] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/checksrc.pl log/10/code1185.c > log/10/stdout1185 2> log/10/stderr1185 valgrind SKIPPED s------e--- OK (1043 out of 1513, remaining: 00:36, took 0.034s, duration: 01:22) 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/4/valgrind1163 ./libtest/lib576 "ftp://127.0.0.1:36137/fully_simulated/DOS/*[][" > log/4/stdout1163 2> log/4/stderr1163 1163: 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 1163 === Start of file server.cmd Testnum 1163 === End of file server.cmd === Start of file stderr1163 URL: ftp://127.0.0.1:36137/fully_simulated/DOS/*[][ === End of file stderr1163 === Start of file valgrind1163 ==122951== ==122951== Process terminating with default action of signal 4 (SIGILL) ==122951== Illegal opcode at address 0x48DC18B ==122951== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==122951== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==122951== by 0x48DC18B: Curl_open (url.c:519) ==122951== by 0x487CCEF: curl_easy_init (easy.c:368) ==122951== by 0x109098: UnknownInlinedFun (lib576.c:103) ==122951== by 0x109098: main (first.c:178) ==122951== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==122951== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122951== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122951== by 0x4A58EC8: tsearch (tsearch.c:290) ==122951== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122951== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122951== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122951== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122951== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==122951== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==122951== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122951== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122951== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122951== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122951== by 0x497836B: setlocale (setlocale.c:337) ==122951== by 0x109054: main (first.c:157) ==122951== ==122951== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==122951== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122951== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122951== by 0x4A58EC8: tsearch (tsearch.c:290) ==122951== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122951== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==122951== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==122951== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122951== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122951== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122951== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122951== by 0x497836B: setlocale (setlocale.c:337) ==122951== by 0x109054: main (first.c:157) ==122951== ==122951== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==122951== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122951== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122951== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122951== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122951== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122951== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==122951== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==122951== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122951== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122951== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122951== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122951== by 0x497836B: setlocale (setlocale.c:337) ==122951== by 0x109054: main (first.c:157) ==122951== ==122951== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==122951== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122951== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122951== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==122951== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==122951== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122951== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122951== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122951== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122951== by 0x497836B: setlocale (setlocale.c:337) ==122951== by 0x109054: main (first.c:157) ==122951== ==122951== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==122951== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==122951== by 0x48DC163: Curl_open (url.c:510) ==122951== by 0x487CCEF: curl_easy_init (easy.c:368) ==122951== by 0x109098: UnknownInlinedFun (lib576.c:103) ==122951== by 0x109098: main (first.c:178) ==122951== ==122951== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==122951== at 0x4842788: malloc (vg_replace_malloc.c:446) ==122951== by 0x4A58EC8: __tsearch (tsearch.c:337) ==122951== by 0x4A58EC8: tsearch (tsearch.c:290) ==122951== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==122951== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122951== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122951== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122951== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==122951== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==122951== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122951== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122951== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122951== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122951== by 0x497836B: setlocale (setlocale.c:337) ==122951== by 0x109054: main (first.c:157) ==122951== ==122951== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==122951== CMD (33792): ../libtool --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/valgrind1172 ../src/curl -q --output log/7/curl1172.out --include --trace-ascii log/7/trace1172 --trace-time http://127.0.0.1:35853/1172 --no-http0.9 > log/7/stdout1172 2> log/7/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/12/valgrind1170 ../src/curl -q --output log/12/curl1170.out --include --trace-ascii log/12/trace1170 --trace-time http://127.0.0.1:44175/1170 --tr-encoding -H "Connection:" > log/12/stdout1170 2> log/12/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/3/valgrind1171 ../src/curl -q --output log/3/curl1171.out --include --trace-ascii log/3/trace1171 --trace-time http://127.0.0.1:46313/1171 --tr-encoding -H "Connection;" > log/3/stdout1171 2> log/3/stderr1171 CMD (33792): ../libtool --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/valgrind1174 ../src/curl -q --output log/2/curl1174.out --include --trace-ascii log/2/trace1174 --trace-time http://127.0.0.1:44205/1174 > log/2/stdout1174 2> log/2/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/6/valgrind1176 ../src/curl -q --include --trace-ascii log/6/trace1176 --trace-time http://127.0.0.1:41583/1176 -o 'log/6/base-#0' > log/6/stdout1176 2> log/6/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/9/valgrind1178 ../src/curl -q --output log/9/curl1178.out --include --trace-ascii log/9/trace1178 --trace-time http://127.0.0.1:40247/we/want/that/page/1178 -x http://127.0.0.1:40247 -U AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB > log/9/stdout1178 2> log/9/stderr1178 CMD (33792): ../libtool --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/valgrind1180 ../src/curl -q --output log/8/curl1180.out --include --trace-ascii log/8/trace1180 --trace-time --proxy http://127.0.0.1:33791 -H "Proxy-Connection: Keep-Alive" http://127.0.0.1:33791/1180 > log/8/stdout1180 2> log/8/stderr1180 at 0x4842788: malloc (vg_replace_malloc.c:446) ==122951== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==122951== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==122951== by 0x496C9A2: add_alias (gconv_conf.c:178) ==122951== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==122951== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==122951== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==122951== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==122951== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==122951== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==122951== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==122951== by 0x497836B: setlocale (setlocale.c:337) ==122951== by 0x109054: main (first.c:157) ==122951== === End of file valgrind1163 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/7/valgrind1172 ../src/curl -q --output log/7/curl1172.out --include --trace-ascii log/7/trace1172 --trace-time http://127.0.0.1:35853/1172 --no-http0.9 > log/7/stdout1172 2> log/7/stderr1172 1172: 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 1172 === Start of file server.cmd Testnum 1172 === End of file server.cmd === Start of file valgrind1172 ==123227== ==123227== Process terminating with default action of signal 4 (SIGILL) ==123227== Illegal opcode at address 0x10B06D ==123227== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123227== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1172 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/3/valgrind1171 ../src/curl -q --output log/3/curl1171.out --include --trace-ascii log/3/trace1171 --trace-time http://127.0.0.1:46313/1171 --tr-encoding -H "Connection;" > log/3/stdout1171 2> log/3/stderr1171 1171: 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 1171 === Start of file server.cmd Testnum 1171 === End of file server.cmd === Start of file valgrind1171 ==123223== ==123223== Process terminating with default action of signal 4 (SIGILL) ==123223== Illegal opcode at address 0x10B06D ==123223== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123223== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1171 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/12/valgrind1170 ../src/curl -q --output log/12/curl1170.out --include --trace-ascii log/12/trace1170 --trace-time http://127.0.0.1:44175/1170 --tr-encoding -H "Connection:" > log/12/stdout1170 2> log/12/stderr1170 1170: 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 1170 === Start of file server.cmd Testnum 1170 === End of file server.cmd === Start of file valgrind1170 ==123208== ==123208== Process terminating with default action of signal 4 (SIGILL) ==123208== Illegal opcode at address 0x10B06D ==123208== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123208== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1170 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/2/valgrind1174 ../src/curl -q --output log/2/curl1174.out --include --trace-ascii log/2/trace1174 --trace-time http://127.0.0.1:44205/1174 > log/2/stdout1174 2> log/2/stderr1174 1174: 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 1174 === Start of file server.cmd Testnum 1174 === End of file server.cmd === Start of file valgrind1174 ==123245== ==123245== Process terminating with default action of signal 4 (SIGILL) ==123245== Illegal opcode at address 0x10B06D ==123245== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123245== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1174 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/6/valgrind1176 ../src/curl -q --include --trace-ascii log/6/trace1176 --trace-time http://127.0.0.1:41583/1176 -o 'log/6/base-#0' > log/6/stdout1176 2> log/6/stderr1176 1176: 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 1176 === Start of file server.cmd Testnum 1176 === End of file server.cmd === Start of file valgrind1176 ==123408== ==123408== Process terminating with default action of signal 4 (SIGILL) ==123408== Illegal opcode at address 0x10B06D ==123408== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123408== by 0x10B06D: 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/9/valgrind1178 ../src/curl -q --output log/9/curl1178.out --include --trace-ascii log/9/trace1178 --trace-time http://127.0.0.1:40247/we/want/that/page/1178 -x http://127.0.0.1:40247 -U AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB > log/9/stdout1178 2> log/9/stderr1178 1178: 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 1178 === Start of file server.cmd Testnum 1178 === End of file server.cmd === Start of file valgrind1178 ==123434== ==123434== Process terminating with default action of signal 4 (SIGILL) ==123434== Illegal opcode at address 0x10B06D ==123434== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123434== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1178 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/8/valgrind1180 ../src/curl -q --output log/8/curl118CMD (33792): ../libtool --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/valgrind1181 ../src/curl -q --output log/1/curl1181.out --include --trace-ascii log/1/trace1181 --trace-time --proxy http://127.0.0.1:39283 --proxy-header "Proxy-Connection: Keep-Alive" http://127.0.0.1:39283/1181 > log/1/stdout1181 2> log/1/stderr1181 CMD (33792): ../libtool --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/valgrind1186 ../src/curl -q --output log/10/curl1186.out --include --trace-ascii log/10/trace1186 --trace-time http://127.0.0.1:36145/we/want/1186 --form-escape -F "file=@\"log/10/test1186\\\".txt\";type=mo/foo;filename=\"test1186\\\".txt\"" -F 'file2=@"log/10/test1186\".txt"' -F 'file3=@"log/10/test1186\".txt";type=m/f,"log/10/test1186\".txt"' > log/10/stdout1186 2> log/10/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/5/valgrind1183 ../src/curl -q --output log/5/curl1183.out --include --trace-ascii log/5/trace1183 --trace-time http://127.0.0.1:33519/1183 > log/5/stdout1183 2> log/5/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/4/valgrind1187 ../src/curl -q --output log/4/curl1187.out --include --trace-ascii log/4/trace1187 --trace-time smtp://127.0.0.1:35465/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/4/stdout1187 2> log/4/stderr1187 CMD (33792): ../libtool --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/valgrind1188 ../src/curl -q --output log/7/curl1188.out --include --trace-ascii log/7/trace1188 --trace-time -f -s -w '%{onerror}%{stderr}%{urlnum} says %{exitcode} %{errormsg}\n' http://127.0.0.1:35853/we/want/our/1188 http://127.0.0.1:35853/we/want/our/1188 > log/7/stdout1188 2> log/7/stderr1188 0.out --include --trace-ascii log/8/trace1180 --trace-time --proxy http://127.0.0.1:33791 -H "Proxy-Connection: Keep-Alive" http://127.0.0.1:33791/1180 > log/8/stdout1180 2> log/8/stderr1180 1180: 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 1180 === Start of file server.cmd Testnum 1180 === End of file server.cmd === Start of file valgrind1180 ==123437== ==123437== Process terminating with default action of signal 4 (SIGILL) ==123437== Illegal opcode at address 0x10B06D ==123437== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123437== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1180 test 1181...[HTTP GET request with proxy and --proxy-header "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/1/valgrind1181 ../src/curl -q --output log/1/curl1181.out --include --trace-ascii log/1/trace1181 --trace-time --proxy http://127.0.0.1:39283 --proxy-header "Proxy-Connection: Keep-Alive" http://127.0.0.1:39283/1181 > log/1/stdout1181 2> log/1/stderr1181 1181: 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 1181 === Start of file server.cmd Testnum 1181 === End of file server.cmd === Start of file valgrind1181 ==123564== ==123564== Process terminating with default action of signal 4 (SIGILL) ==123564== Illegal opcode at address 0x10B06D ==123564== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123564== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1181 prechecked /usr/bin/perl -e "print 'Test requires a system supporting double quotes in file names' if ($^O eq 'msys');" 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/10/valgrind1186 ../src/curl -q --output log/10/curl1186.out --include --trace-ascii log/10/trace1186 --trace-time http://127.0.0.1:36145/we/want/1186 --form-escape -F "file=@\"log/10/test1186\\\".txt\";type=mo/foo;filename=\"test1186\\\".txt\"" -F 'file2=@"log/10/test1186\".txt"' -F 'file3=@"log/10/test1186\".txt";type=m/f,"log/10/test1186\".txt"' > log/10/stdout1186 2> log/10/stderr1186 1186: 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 1186 === Start of file server.cmd Testnum 1186 === End of file server.cmd === Start of file test1186".txt foo bar This is a bar foo bar foo === End of file test1186".txt === Start of file valgrind1186 ==123664== ==123664== Process terminating with default action of signal 4 (SIGILL) ==123664== Illegal opcode at address 0x10B06D ==123664== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123664== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1186 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/5/valgrind1183 ../src/curl -q --output log/5/curl1183.out --include --trace-ascii log/5/trace1183 --trace-time http://127.0.0.1:33519/1183 > log/5/stdout1183 2> log/5/stderr1183 1183: 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 1183 === Start of file server.cmd Testnum 1183 === End of file server.cmd === Start of file valgrind1183 ==123579== ==123579== Process terminating with default action of signal 4 (SIGILL) ==123579== Illegal opcode at address 0x10B06D ==123579== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123579== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1183 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/4/valgrind1187 ../src/curl -q --output log/4/curl1187.out --include --trace-ascii log/4/trace1187 --trace-time smtp://127.0.0.1:35465/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/4/stdout1187 2> log/4/stderr1187 1187: 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 1187 === Start of file server.cmd Testnum 1187 === End of file server.cmd === Start of file stdin-for-1187 From: different To: another body === End of file stdin-for-1187 === Start of file valgrind1187 ==123679== ==123679== Process terminating with default action of signal 4 (SIGILL) ==123679== Illegal opcode at address 0x10B06D ==123679== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123679== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1187 CMD (33792): ../libtool --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/valgrind1189 ../src/curl -q --output log/3/curl1189.out --include --trace-ascii log/3/trace1189 --trace-time http://127.0.0.1:46313/we/want/1189 --form-escape -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/3/stdout1189 2> log/3/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/5/valgrind1197 ../src/curl -q --include --trace-ascii log/5/trace1197 --trace-time http://127.0.0.1:33519/1197 -w "%{method}\n" -L -d "twinkle twinkle little star" > log/5/stdout1197 2> log/5/stderr1197 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/7/valgrind1188 ../src/curl -q --output log/7/curl1188.out --include --trace-ascii log/7/trace1188 --trace-time -f -s -w '%{onerror}%{stderr}%{urlnum} says %{exitcode} %{errormsg}\n' http://127.0.0.1:35853/we/want/our/1188 http://127.0.0.1:35853/we/want/our/1188 > log/7/stdout1188 2> log/7/stderr1188 1188: stderr FAILED: --- log/7/check-expected 2024-05-23 11:17:04.351297459 +0200 +++ log/7/check-generated 2024-05-23 11:17:04.351297459 +0200 @@ -1,2 +0,0 @@ -0 says 22 The requested URL returned error: 404[LF] -1 says 22 The requested URL returned error: 404[LF] == Contents of files in the log/7/ dir after test 1188 === Start of file check-expected 0 says 22 The requested URL returned error: 404[LF] 1 says 22 The requested URL returned error: 404[LF] === End of file check-expected === Start of file server.cmd Testnum 1188 === End of file server.cmd === Start of file valgrind1188 ==123769== ==123769== Process terminating with default action of signal 4 (SIGILL) ==123769== Illegal opcode at address 0x10B06D ==123769== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123769== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1188 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/3/valgrind1189 ../src/curl -q --output log/3/curl1189.out --include --trace-ascii log/3/trace1189 --trace-time http://127.0.0.1:46313/we/want/1189 --form-escape -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/3/stdout1189 2> log/3/stderr1189 1189: 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 1189 === Start of file server.cmd Testnum 1189 === End of file server.cmd === Start of file test1189.txt foo bar This is a bar foo bar foo === End of file test1189.txt === Start of file valgrind1189 ==123793== ==123793== Process terminating with default action of signal 4 (SIGILL) ==123793== Illegal opcode at address 0x10B06D ==123793== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123793== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1189 RUN: Process with pid 80591 forced to die with SIGKILL CMD (33792): ../libtool --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/valgrind1190 ../src/curl -q --output log/12/curl1190.out --include --trace log/12/trace1190 --trace-time mqtt://127.0.0.1:42073/1190 > log/12/stdout1190 2> log/12/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/2/valgrind1191 ../src/curl -q --output log/2/curl1191.out --include --trace log/2/trace1191 --trace-time mqtt://127.0.0.1:41955/1191 -d something > log/2/stdout1191 2> log/2/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/6/valgrind1192 ../src/curl -q --output log/6/curl1192.out --include --trace log/6/trace1192 --trace-time mqtt://127.0.0.1:45003/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/1192 > log/6/stdout1192 2> log/6/stderr1192 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/5/valgrind1197 ../src/curl -q --include --trace-ascii log/5/trace1197 --trace-time http://127.0.0.1:33519/1197 -w "%{method}\n" -L -d "twinkle twinkle little star" > log/5/stdout1197 2> log/5/stderr1197 1197: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:04.567968577 +0200 +++ log/5/check-generated 2024-05-23 11:17:04.564635175 +0200 @@ -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/5/ 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 server.cmd Testnum 1197 === End of file server.cmd === Start of file valgrind1197 ==123882== ==123882== Process terminating with default action of signal 4 (SIGILL) ==123882== Illegal opcode at address 0x10B06D ==123882== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123882== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1197 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/11/valgrind1086 ../src/curl -q --output log/11/curl1086.out --include --trace-ascii log/11/trace1086 --trace-time ftp://127.0.0.1:36091/1086 -m 7 > log/11/stdout1086 2> log/11/stderr1086 1086: 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 1086 === Start of file server.cmd SLOWDOWN 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 ==119409== ==119409== Process terminating with default action of signal 4 (SIGILL) ==119409== Illegal opcode at address 0x10B06D ==119409== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==119409== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1086 startnew: server/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 123773 on PORT 42073 * pid mqtt => 123773 123773 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/12/valgrind1190 ../src/curl -q --output log/12/curl1190.out --include --trace log/12/trace1190 --trace-time mqtt://127.0.0.1:42073/1190 > log/12/stdout1190 2> log/12/stderr1190 1190: 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 1190 === Start of file mqtt_server.log 11:17:03.427531 Running IPv4 version 11:17:03.427594 Listening on port 42073 11:17:03.427621 Wrote pid 123773 to log/12/server/mqtt_server.pid 11:17:03.427643 Wrote port 42073 to log/12/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 ==123940== ==123940== Process terminating with default action of signal 4 (SIGILL) ==123940== Illegal opcode at address 0x10B06D ==123940== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123940== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1190 startnew: server/mqttd --port 0 --pidfile log/2/server/mqtt_server.pid --portfile log/2/server/mqtt_server.port --config log/2/server.cmd --logfile log/2/mqtt_server.log --logdir log/2 RUN: MQTT server is now running PID 123782 on PORT 41955 * pid mqtt => 123782 123782 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/2/valgrind1191 ../src/curl -q --output log/2/curl1191.out --include --trace log/2/trace1191 --trace-time mqtt://127.0.0.1:41955/1191 -d something > log/2/stdout1191 2> log/2/stderr1191 1191: 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 1191 === Start of file mqtt_server.log 11:17:03.432940 Running IPv4 version 11:17:03.433005 Listening on port 41955 11:17:03.433032 Wrote pid 123782 to log/2/server/mqtt_server.pid 11:17:03.433056 Wrote port 41955 to log/2/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 ==123942== ==123942== Process terminating with default action of signal 4 (SIGILL) ==123942== Illegal opcode at address 0x10B06D ==123942== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==123942== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1191 startnew: server/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 123873 on PORT 45003 * pid mqtt => 123873 123873 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/6/valgrind1192 ../src/curl -q --output log/6/curl1192.out --include --trace log/6/trace1192 --trace-time mqtt://127.0.0.1:45003/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMD (0): ../src/curl --max-time 13 --output log/3/gopher_verify.out --silent --verbose --globoff "gopher://127.0.0.1:43447/1/verifiedserver" 2>log/3/gopher_verify.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/9/valgrind1193 ../src/curl -q --output log/9/curl1193.out --include --trace log/9/trace1193 --trace-time mqtt://127.0.0.1:37895/1193 -d @log/9/payload1193 > log/9/stdout1193 2> log/9/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/8/valgrind1194 ../src/curl -q --output log/8/curl1194.out --include --trace log/8/trace1194 --trace-time mqtt://127.0.0.1:37393/1194 > log/8/stdout1194 2> log/8/stderr1194 CMD (0): ../src/curl --max-time 13 --output log/5/gopher_verify.out --silent --verbose --globoff "gopher://127.0.0.1:44973/1/verifiedserver" 2>log/5/gopher_verify.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/1/valgrind1195 ../src/curl -q --output log/1/curl1195.out --include --trace log/1/trace1195 --trace-time mqtt://127.0.0.1:44675/1195 > log/1/stdout1195 2> log/1/stderr1195 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/1192 > log/6/stdout1192 2> log/6/stderr1192 1192: 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 1192 === Start of file mqtt_server.log 11:17:03.499468 Running IPv4 version 11:17:03.499538 Listening on port 45003 11:17:03.499564 Wrote pid 123873 to log/6/server/mqtt_server.pid 11:17:03.499587 Wrote port 45003 to log/6/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 ==124035== ==124035== Process terminating with default action of signal 4 (SIGILL) ==124035== Illegal opcode at address 0x10B06D ==124035== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124035== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1192 startnew: server/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 123875 on PORT 37895 * pid mqtt => 123875 123875 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/9/valgrind1193 ../src/curl -q --output log/9/curl1193.out --include --trace log/9/trace1193 --trace-time mqtt://127.0.0.1:37895/1193 -d @log/9/payload1193 > log/9/stdout1193 2> log/9/stderr1193 1193: 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 1193 === Start of file mqtt_server.log 11:17:04.527388 Running IPv4 version 11:17:04.527456 Listening on port 37895 11:17:04.527482 Wrote pid 123875 to log/9/server/mqtt_server.pid 11:17:04.527506 Wrote port 37895 to log/9/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 ==124081== ==124081== Process terminating with default action of signal 4 (SIGILL) ==124081== Illegal opcode at address 0x10B06D ==124081== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124081== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1193 startnew: server/mqttd --port 0 --pidfile log/8/server/mqtt_server.pid --portfile log/8/server/mqtt_server.port --config log/8/server.cmd --logfile log/8/mqtt_server.log --logdir log/8 RUN: MQTT server is now running PID 123876 on PORT 37393 * pid mqtt => 123876 123876 test 1194...[MQTT SUBSCRIBE with PUBLISH befoire 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/8/valgrind1194 ../src/curl -q --output log/8/curl1194.out --include --trace log/8/trace1194 --trace-time mqtt://127.0.0.1:37393/1194 > log/8/stdout1194 2> log/8/stderr1194 1194: 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 1194 === Start of file mqtt_server.log 11:17:04.541553 Running IPv4 version 11:17:04.541609 Listening on port 37393 11:17:04.541635 Wrote pid 123876 to log/8/server/mqtt_server.pid 11:17:04.541657 Wrote port 37393 to log/8/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 ==124114== ==124114== Process terminating with default action of signal 4 (SIGILL) ==124114== Illegal opcode at address 0x10B06D ==124114== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124114== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1194 startnew: server/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 123879 on PORT 44675 * pid mqtt => 123879 123879 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/1/valgrind1195 ../src/curl -q --output log/1/curl1195.out --include --trace log/1/trace1195 --trace-time mqtt://127.0.0.1:44675/1195 > log/1/stdout1195 2> log/1/stderr1195 1195: 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 1195 === Start of file mqtt_server.log 11:17:04.698630 Running IPv4 version 11:17:04.698698 Listening on port 44675 11:17:04.698723 Wrote pid 123879 to log/1/server/mqtt_server.pid 11:17:04.698747 Wrote port 44675 to log/1/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 ==124182== ==124182== Process terminating with default action of signal 4 (SIGILL) ==124182== Illegal opcode at address 0x10B06D ==124182== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124182== by 0x10B06D: main (tool_main.c:234) === End of file valgriCMD (33792): ../libtool --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/valgrind1196 ../src/curl -q --output log/10/curl1196.out --include --trace log/10/trace1196 --trace-time mqtt://127.0.0.1:44763/1196 > log/10/stdout1196 2> log/10/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/4/valgrind1198 ../src/curl -q --output log/4/curl1198.out --include --trace log/4/trace1198 --trace-time mqtt://127.0.0.1:33563/%20 -d "" > log/4/stdout1198 2> log/4/stderr1198 CMD (0): ../src/curl --max-time 13 --output log/11/gopher_verify.out --silent --verbose --globoff "gopher://127.0.0.1:43745/1/verifiedserver" 2>log/11/gopher_verify.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/2/valgrind1204 ../src/curl -q --output log/2/curl1204.out --include --trace-ascii log/2/trace1204 --trace-time http://127.0.0.1:44205/1204 -u testuser:testpass --anyauth > log/2/stdout1204 2> log/2/stderr1204 CMD (33792): ../libtool --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/valgrind1199 ../src/curl -q --output log/7/curl1199.out --include --trace log/7/trace1199 --trace-time mqtt://127.0.0.1:43273 -d "" > log/7/stdout1199 2> log/7/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/6/valgrind1205 ../src/curl -q --output log/6/curl1205.out --include --trace-ascii log/6/trace1205 --trace-time http://127.0.0.1:41583/1205 > log/6/stdout1205 2> log/6/stderr1205 CMD (33792): ../libtool --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/valgrind1200 ../src/curl -q --output log/3/curl1200.out --include --trace-ascii log/3/trace1200 --trace-time gopher://127.0.0.1:43447/1/1200 > log/3/stdout1200 2> log/3/stderr1200 nd1195 startnew: server/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 123880 on PORT 44763 * pid mqtt => 123880 123880 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/10/valgrind1196 ../src/curl -q --output log/10/curl1196.out --include --trace log/10/trace1196 --trace-time mqtt://127.0.0.1:44763/1196 > log/10/stdout1196 2> log/10/stderr1196 1196: 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 1196 === Start of file mqtt_server.log 11:17:04.702156 Running IPv4 version 11:17:04.702202 Listening on port 44763 11:17:04.702222 Wrote pid 123880 to log/10/server/mqtt_server.pid 11:17:04.702240 Wrote port 44763 to log/10/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 ==124186== ==124186== Process terminating with default action of signal 4 (SIGILL) ==124186== Illegal opcode at address 0x10B06D ==124186== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124186== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1196 startnew: server/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 123921 on PORT 33563 * pid mqtt => 123921 123921 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/4/valgrind1198 ../src/curl -q --output log/4/curl1198.out --include --trace log/4/trace1198 --trace-time mqtt://127.0.0.1:33563/%20 -d "" > log/4/stdout1198 2> log/4/stderr1198 1198: 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 1198 === Start of file mqtt_server.log 11:17:04.731491 Running IPv4 version 11:17:04.731543 Listening on port 33563 11:17:04.731563 Wrote pid 123921 to log/4/server/mqtt_server.pid 11:17:04.731581 Wrote port 33563 to log/4/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 ==124274== ==124274== Process terminating with default action of signal 4 (SIGILL) ==124274== Illegal opcode at address 0x10B06D ==124274== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124274== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1198 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/2/valgrind1204 ../src/curl -q --output log/2/curl1204.out --include --trace-ascii log/2/trace1204 --trace-time http://127.0.0.1:44205/1204 -u testuser:testpass --anyauth > log/2/stdout1204 2> log/2/stderr1204 1204: 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 1204 === Start of file server.cmd Testnum 1204 === End of file server.cmd === Start of file valgrind1204 ==124327== ==124327== Process terminating with default action of signal 4 (SIGILL) ==124327== Illegal opcode at address 0x10B06D ==124327== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124327== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1204 startnew: server/mqttd --port 0 --pidfile log/7/server/mqtt_server.pid --portfile log/7/server/mqtt_server.port --config log/7/server.cmd --logfile log/7/mqtt_server.log --logdir log/7 RUN: MQTT server is now running PID 123934 on PORT 43273 * pid mqtt => 123934 123934 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/7/valgrind1199 ../src/curl -q --output log/7/curl1199.out --include --trace log/7/trace1199 --trace-time mqtt://127.0.0.1:43273 -d "" > log/7/stdout1199 2> log/7/stderr1199 1199: 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 1199 === Start of file mqtt_server.log 11:17:04.878552 Running IPv4 version 11:17:04.878598 Listening on port 43273 11:17:04.878618 Wrote pid 123934 to log/7/server/mqtt_server.pid 11:17:04.878635 Wrote port 43273 to log/7/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 ==124382== ==124382== Process terminating with default action of signal 4 (SIGILL) ==124382== Illegal opcode at address 0x10B06D ==124382== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124382== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1199 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/6/valgrind1205 ../src/curl -q --output log/6/curl1205.out --include --trace-ascii log/6/trace1205 --trace-time http://127.0.0.1:41583/1205 > log/6/stdout1205 2> log/6/stderr1205 1205: 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 1205 === Start of file server.cmd Testnum 1205 === End of file server.cmd === Start of file valgrind1205 ==124439== ==124439== Process terminating with default action of signal 4 (SIGILL) ==124439== Illegal opcode at address 0x10B06D ==124439== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124439== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1205 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/3/server/gopher_server.pid" --logfile "log/3/gopher_server.log" --logdir "log/3" --portfile log/3/server/gopher_server.port --config log/3/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/3/gopher_verify.out --silent --verbose --globoff "gopher://127.0.0.1:43447/1/verifiedserver" 2>log/3/gopher_verify.log RUN: GOPHER server is on PID 123933 port 43447 * pid gopher => 123933 123933 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/3/valgrind1200 ../src/curl -q --output log/3/curl1200.out --include --trace-ascii log/3/trace1200 --trace-time gopher://127.0.0.1:43447/1/1200 > log/3/stdout1200 2> log/3/stderr1200 1200: 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 1200 === Start of file gopher_server.log 11:17:04.887761 Running GOPHER IPv4 version on port 43447 11:17:04.887924 Wrote pid 123933 to log/3/server/gopher_server.pid 11:17:04.887943 Wrote port 43447 to log/3/server/gopher_server.port 11:17:05.894355 ====> Client connect 11:17:05.894377 accept_connection 3 returned 4 11:17:05.894388 accept_connection 3 returned 0 11:17:05.894398 Read 17 bytes 11:17:05.894405 Process 17 bytes request 11:17:05.CMD (33792): ../libtool --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/valgrind1207 ../src/curl -q --output log/8/curl1207.out --include --trace-ascii log/8/trace1207 --trace-time --max-time 8 ftp://127.0.0.1:43509/1207 -P - > log/8/stdout1207 2> log/8/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/9/valgrind1206 ../src/curl -q --output log/9/curl1206.out --include --trace-ascii log/9/trace1206 --trace-time --max-time 8 ftp://127.0.0.1:39811/1206 -P - > log/9/stdout1206 2> log/9/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/5/valgrind1201 ../src/curl -q --output log/5/curl1201.out --include --trace-ascii log/5/trace1201 --trace-time gopher://127.0.0.1:44973/1/selector/SELECTOR/1201 > log/5/stdout1201 2> log/5/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/10/valgrind1212 ../src/curl -q --output log/10/curl1212.out --include --trace-ascii log/10/trace1212 --trace-time http://user:secret@127.0.0.1:36145/ulion/1212 --socks5 non-existing-host.haxx.se:1080 --noproxy 127.0.0.1 --max-time 5 > log/10/stdout1212 2> log/10/stderr1212 CMD (33792): ../libtool --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-time --max-time 8 ftp://127.0.0.1:35701/1208 -P - > log/1/stdout1208 2> log/1/stderr1208 CMD (33792): ../libtool --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/valgrind1213 ../src/curl -q --output log/4/curl1213.out --include --trace-ascii log/4/trace1213 --trace-time -x 127.0.0.1:41947 we.want.that.site.com.1213 > log/4/stdout1213 2> log/4/stderr1213 894412 Are-we-friendly question received 11:17:05.894430 Wrote request (17 bytes) input to log/3/server.input 11:17:05.894448 Identifying ourselves as friends 11:17:05.894483 Response sent (18 bytes) and written to log/3/server.response 11:17:05.894490 special request received, no persistency 11:17:05.894497 ====> Client disconnect 0 === End of file gopher_server.log === Start of file gopher_verify.log * Trying 127.0.0.1:43447... * Connected to 127.0.0.1 (127.0.0.1) port 43447 { [18 bytes data] * Closing connection === End of file gopher_verify.log === Start of file gopher_verify.out WE ROOLZ: 123933 === End of file gopher_verify.out === Start of file server.cmd Testnum 1200 === End of file server.cmd === Start of file server.response WE ROOLZ: 123933 === End of file server.response === Start of file valgrind1200 ==124444== ==124444== Process terminating with default action of signal 4 (SIGILL) ==124444== Illegal opcode at address 0x10B06D ==124444== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124444== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1200 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/8/valgrind1207 ../src/curl -q --output log/8/curl1207.out --include --trace-ascii log/8/trace1207 --trace-time --max-time 8 ftp://127.0.0.1:43509/1207 -P - > log/8/stdout1207 2> log/8/stderr1207 1207: 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 1207 === Start of file server.cmd NODATACONN421 Testnum 1207 === End of file server.cmd === Start of file valgrind1207 ==124575== ==124575== Process terminating with default action of signal 4 (SIGILL) ==124575== Illegal opcode at address 0x10B06D ==124575== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124575== by 0x10B06D: 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/9/valgrind1206 ../src/curl -q --output log/9/curl1206.out --include --trace-ascii log/9/trace1206 --trace-time --max-time 8 ftp://127.0.0.1:39811/1206 -P - > log/9/stdout1206 2> log/9/stderr1206 1206: 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 1206 === Start of file server.cmd NODATACONN425 Testnum 1206 === End of file server.cmd === Start of file valgrind1206 ==124454== ==124454== Process terminating with default action of signal 4 (SIGILL) ==124454== Illegal opcode at address 0x10B06D ==124454== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124454== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1206 startnew: perl -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: ../src/curl --max-time 13 --output log/5/gopher_verify.out --silent --verbose --globoff "gopher://127.0.0.1:44973/1/verifiedserver" 2>log/5/gopher_verify.log RUN: GOPHER server is on PID 123937 port 44973 * pid gopher => 123937 123937 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/5/valgrind1201 ../src/curl -q --output log/5/curl1201.out --include --trace-ascii log/5/trace1201 --trace-time gopher://127.0.0.1:44973/1/selector/SELECTOR/1201 > log/5/stdout1201 2> log/5/stderr1201 1201: 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 1201 === Start of file gopher_server.log 11:17:04.102325 Running GOPHER IPv4 version on port 44973 11:17:04.102380 Wrote pid 123937 to log/5/server/gopher_server.pid 11:17:04.102397 Wrote port 44973 to log/5/server/gopher_server.port 11:17:05.111387 ====> Client connect 11:17:05.111410 accept_connection 3 returned 4 11:17:05.111422 accept_connection 3 returned 0 11:17:05.111433 Read 17 bytes 11:17:05.111440 Process 17 bytes request 11:17:05.111447 Are-we-friendly question received 11:17:05.111465 Wrote request (17 bytes) input to log/5/server.input 11:17:05.111484 Identifying ourselves as friends 11:17:05.111518 Response sent (18 bytes) and written to log/5/server.response 11:17:05.111525 special request received, no persistency 11:17:05.111532 ====> Client disconnect 0 === End of file gopher_server.log === Start of file gopher_verify.log * Trying 127.0.0.1:44973... * Connected to 127.0.0.1 (127.0.0.1) port 44973 { [18 bytes data] * Closing connection === End of file gopher_verify.log === Start of file gopher_verify.out WE ROOLZ: 123937 === End of file gopher_verify.out === Start of file server.cmd Testnum 1201 === End of file server.cmd === Start of file server.response WE ROOLZ: 123937 === End of file server.response === Start of file valgrind1201 ==124650== ==124650== Process terminating with default action of signal 4 (SIGILL) ==124650== Illegal opcode at address 0x10B06D ==124650== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124650== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1201 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/10/valgrind1212 ../src/curl -q --output log/10/curl1212.out --include --trace-ascii log/10/trace1212 --trace-time http://user:secret@127.0.0.1:36145/ulion/1212 --socks5 non-existing-host.haxx.se:1080 --noproxy 127.0.0.1 --max-time 5 > log/10/stdout1212 2> log/10/stderr1212 1212: 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 1212 === Start of file server.cmd Testnum 1212 === End of file server.cmd === Start of file valgrind1212 ==124699== ==124699== Process terminating with default action of signal 4 (SIGILL) ==124699== Illegal opcode at address 0x10B06D ==124699== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124699== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1212 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-time --max-time 8 ftp://127.0.0.1:35701/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 server.cmd NODATACONN150 Testnum 1208 === End of file server.cmd === Start of file valgrind1208 ==124698== ==124698== Process terminating with default action of signal 4 (SIGILL) ==124698== Illegal opcode at address 0x10B06D ==124698== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124698== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1208 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/4/vaCMD (0): ../src/curl --max-time 13 --output log/12/gopher_ipv6_verify.out --silent --verbose --globoff "gopher://[::1]:38233/1/verifiedserver" 2>log/12/gopher_ipv6_verify.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/11/valgrind1202 ../src/curl -q --output log/11/curl1202.out --include --trace-ascii log/11/trace1202 --trace-time "gopher://127.0.0.1:43745/7/the/search/engine%09query%20succeeded/1202" > log/11/stdout1202 2> log/11/stderr1202 CMD (33792): ../libtool --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/valgrind1214 ../src/curl -q --output log/2/curl1214.out --include --trace-ascii log/2/trace1214 --trace-time -x 127.0.0.1:44205 http://we.want.that.site.com.1214?moo=foo > log/2/stdout1214 2> log/2/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/7/valgrind1215 ../src/curl -q --output log/7/curl1215.out --include --trace-ascii log/7/trace1215 --trace-time http://127.0.0.1:35853/1215 -u testuser:testpass --ntlm --proxy http://127.0.0.1:35853 > log/7/stdout1215 2> log/7/stderr1215 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1222.pl /startdir/src/curl/tests/.. > log/1/stdout1222 2> log/1/stderr1222 CMD (33792): ../libtool --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/valgrind1217 ../src/curl -q --output log/3/curl1217.out --include --trace-ascii log/3/trace1217 --trace-time ftp://127.0.0.1:45493/get/file/1217 ftp://127.0.0.1:45493/get/file/again/1217 --ftp-method singlecwd > log/3/stdout1217 2> log/3/stderr1217 CMD (33792): ../libtool --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/valgrind1216 ../src/curl -q --output log/6/curl1216.out --include --trace-ascii log/6/trace1216 --trace-time http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/6/injar1216 -x 127.0.0.1:41583 > log/6/stdout1216 2> log/6/stderr1216 lgrind1213 ../src/curl -q --output log/4/curl1213.out --include --trace-ascii log/4/trace1213 --trace-time -x 127.0.0.1:41947 we.want.that.site.com.1213 > log/4/stdout1213 2> log/4/stderr1213 1213: 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 1213 === Start of file server.cmd Testnum 1213 === End of file server.cmd === Start of file valgrind1213 ==124709== ==124709== Process terminating with default action of signal 4 (SIGILL) ==124709== Illegal opcode at address 0x10B06D ==124709== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124709== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1213 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/11/server/gopher_server.pid" --logfile "log/11/gopher_server.log" --logdir "log/11" --portfile log/11/server/gopher_server.port --config log/11/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/11/gopher_verify.out --silent --verbose --globoff "gopher://127.0.0.1:43745/1/verifiedserver" 2>log/11/gopher_verify.log RUN: GOPHER server is on PID 123938 port 43745 * pid gopher => 123938 123938 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/11/valgrind1202 ../src/curl -q --output log/11/curl1202.out --include --trace-ascii log/11/trace1202 --trace-time "gopher://127.0.0.1:43745/7/the/search/engine%09query%20succeeded/1202" > log/11/stdout1202 2> log/11/stderr1202 1202: 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 1202 === Start of file gopher_server.log 11:17:04.264283 Running GOPHER IPv4 version on port 43745 11:17:04.264344 Wrote pid 123938 to log/11/server/gopher_server.pid 11:17:04.264361 Wrote port 43745 to log/11/server/gopher_server.port 11:17:05.276227 ====> Client connect 11:17:05.276249 accept_connection 3 returned 4 11:17:05.276260 accept_connection 3 returned 0 11:17:05.276272 Read 17 bytes 11:17:05.276279 Process 17 bytes request 11:17:05.276285 Are-we-friendly question received 11:17:05.276303 Wrote request (17 bytes) input to log/11/server.input 11:17:05.276322 Identifying ourselves as friends 11:17:05.276358 Response sent (18 bytes) and written to log/11/server.response 11:17:05.276366 special request received, no persistency 11:17:05.276372 ====> Client disconnect 0 === End of file gopher_server.log === Start of file gopher_verify.log * Trying 127.0.0.1:43745... * Connected to 127.0.0.1 (127.0.0.1) port 43745 { [18 bytes data] * Closing connection === End of file gopher_verify.log === Start of file gopher_verify.out WE ROOLZ: 123938 === End of file gopher_verify.out === Start of file server.cmd Testnum 1202 === End of file server.cmd === Start of file server.response WE ROOLZ: 123938 === End of file server.response === Start of file valgrind1202 ==124859== ==124859== Process terminating with default action of signal 4 (SIGILL) ==124859== Illegal opcode at address 0x10B06D ==124859== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124859== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1202 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/2/valgrind1214 ../src/curl -q --output log/2/curl1214.out --include --trace-ascii log/2/trace1214 --trace-time -x 127.0.0.1:44205 http://we.want.that.site.com.1214?moo=foo > log/2/stdout1214 2> log/2/stderr1214 1214: 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 1214 === Start of file server.cmd Testnum 1214 === End of file server.cmd === Start of file valgrind1214 ==124876== ==124876== Process terminating with default action of signal 4 (SIGILL) ==124876== Illegal opcode at address 0x10B06D ==124876== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124876== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1214 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/7/valgrind1215 ../src/curl -q --output log/7/curl1215.out --include --trace-ascii log/7/trace1215 --trace-time http://127.0.0.1:35853/1215 -u testuser:testpass --ntlm --proxy http://127.0.0.1:35853 > log/7/stdout1215 2> log/7/stderr1215 1215: 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 1215 === Start of file server.cmd Testnum 1215 === End of file server.cmd === Start of file valgrind1215 ==124956== ==124956== Process terminating with default action of signal 4 (SIGILL) ==124956== Illegal opcode at address 0x10B06D ==124956== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==124956== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1215 * starts no server test 1222...[Verify deprecation statuses and versions] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1222.pl /startdir/src/curl/tests/.. > log/1/stdout1222 2> log/1/stderr1222 valgrind SKIPPED -------e--- OK (1077 out of 1513, remaining: 00:34, took 0.200s, duration: 01:24) 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/3/valgrind1217 ../src/curl -q --output log/3/curl1217.out --include --trace-ascii log/3/trace1217 --trace-time ftp://127.0.0.1:45493/get/file/1217 ftp://127.0.0.1:45493/get/file/again/1217 --ftp-method singlecwd > log/3/stdout1217 2> log/3/stderr1217 1217: 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 1217 === 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 ==125010== ==125010== Process terminating with default action of signal 4 (SIGILL) ==125010== Illegal opcode at address 0x10B06D ==125010== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125010== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1217 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/6/valgrind1216 ../src/curl -q --output log/6/curl1216.out --include --trace-ascii log/6/trace1216 --trace-time http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/6/injar1216 -x 127.0.0.1:41583 > log/6/stdout1216 2> log/6/stderr1216 1216: 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 1216 === 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 valgrind1216 ==125006== ==125006== Process terminating with default action of signal 4 (SIGILL) ==125006== Illegal opcode at address 0x10CMD (33792): ../libtool --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/valgrind1219 ../src/curl -q --output log/9/curl1219.out --include --trace-ascii log/9/trace1219 --trace-time ftp://127.0.0.1:39811/1219 > log/9/stdout1219 2> log/9/stderr1219 CMD (33792): ../libtool --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/valgrind1218 ../src/curl -q --output log/8/curl1218.out --include --trace-ascii log/8/trace1218 --trace-time http://example.fake/c/1218 http://example.fake/c/1218 http://bexample.fake/c/1218 -b nonexisting -x 127.0.0.1:33791 > log/8/stdout1218 2> log/8/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/5/valgrind1220 ../src/curl -q --trace-ascii log/5/trace1220 --trace-time file://localhost/startdir/src/build-curl/tests/log/5/test1220.txt?a_query=foobar#afragment > log/5/stdout1220 2> log/5/stderr1220 B06D ==125006== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125006== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1216 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/9/valgrind1219 ../src/curl -q --output log/9/curl1219.out --include --trace-ascii log/9/trace1219 --trace-time ftp://127.0.0.1:39811/1219 > log/9/stdout1219 2> log/9/stderr1219 1219: 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 1219 === Start of file server.cmd REPLY welcome 230 welcome without password Testnum 1219 === End of file server.cmd === Start of file valgrind1219 ==125071== ==125071== Process terminating with default action of signal 4 (SIGILL) ==125071== Illegal opcode at address 0x10B06D ==125071== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125071== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1219 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/8/valgrind1218 ../src/curl -q --output log/8/curl1218.out --include --trace-ascii log/8/trace1218 --trace-time http://example.fake/c/1218 http://example.fake/c/1218 http://bexample.fake/c/1218 -b nonexisting -x 127.0.0.1:33791 > log/8/stdout1218 2> log/8/stderr1218 1218: 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 1218 === Start of file server.cmd Testnum 1218 === End of file server.cmd === Start of file valgrind1218 ==125066== ==125066== Process terminating with default action of signal 4 (SIGILL) ==125066== Illegal opcode at address 0x10B06D ==125066== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125066== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1218 CMD (33792): ../libtool --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/valgrind1223 ../src/curl -q --include --trace-ascii log/4/trace1223 --trace-time http://127.0.0.1:41947/1223 -w 'IP %{remote_ip} and PORT %{remote_port}\n' > log/4/stdout1223 2> log/4/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/5/valgrind1220 ../src/curl -q --trace-ascii log/5/trace1220 --trace-time file://localhost/startdir/src/build-curl/tests/log/5/test1220.txt?a_query=foobar#afragment > log/5/stdout1220 2> log/5/stderr1220 1220: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:06.831348397 +0200 +++ log/5/check-generated 2024-05-23 11:17:06.831348397 +0200 @@ -1 +0,0 @@ -contents in a single file[LF] == Contents of files in the log/5/ dir after test 1220 === Start of file check-expected contents in a single file[LF] === End of file check-expected === 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 ==125213== ==125213== Process terminating with default action of signal 4 (SIGILL) ==125213== Illegal opcode at address 0x10B06D ==125213== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125213== by 0x10B06D: 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/10/valgrind1221 ../src/curl -q --output log/10/curl1221.out --include --trace-ascii log/10/trace1221 --trace-time http://127.0.0.1:36145/1221 --url-query "my name is moo[]" --url-query "yes=s i r" --url-query "v_alue@log/10/1221.txt" --url-query @log/10/1221.txt --url-query "+%3d%3d" --data-urlencode "start=once upon the time" > log/10/stdout1221 2> log/10/stderr1221 CMD (33792): ../libtool --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/valgrind1203 ../src/curl -q --output log/12/curl1203.out --include --trace-ascii log/12/trace1203 --trace-time -g gopher://[::1]:38233/1/moo/1203 > log/12/stdout1203 2> log/12/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/2/valgrind1225 ../src/curl -q --output log/2/curl1225.out --include --trace-ascii log/2/trace1225 --trace-time ftp://127.0.0.1:42239//foo/1225 ftp://127.0.0.1:42239//foo/bar/1225 > log/2/stdout1225 2> log/2/stderr1225 CMD (33792): ../libtool --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/valgrind1227 ../src/curl -q --output log/1/curl1227.out --include --trace-ascii log/1/trace1227 --trace-time ftp://127.0.0.1:35701//1227 --ftp-method nocwd > log/1/stdout1227 2> log/1/stderr1227 CMD (33792): ../libtool --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/valgrind1226 ../src/curl -q --output log/7/curl1226.out --include --trace-ascii log/7/trace1226 --trace-time ftp://127.0.0.1:45903//1226 --ftp-method singlecwd > log/7/stdout1226 2> log/7/stderr1226 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/4/valgrind1223 ../src/curl -q --include --trace-ascii log/4/trace1223 --trace-time http://127.0.0.1:41947/1223 -w 'IP %{remote_ip} and PORT %{remote_port}\n' > log/4/stdout1223 2> log/4/stderr1223 1223: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:06.871349219 +0200 +++ log/4/check-generated 2024-05-23 11:17:06.871349219 +0200 @@ -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 41947[LF] == Contents of files in the log/4/ 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 41947[LF] === End of file check-expected === Start of file server.cmd Testnum 1223 === End of file server.cmd === Start of file valgrind1223 ==125272== ==125272== Process terminating with default action of signal 4 (SIGILL) ==125272== Illegal opcode at address 0x10B06D ==125272== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125272== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1223 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/10/valgrind1221 ../src/curl -q --output log/10/curl1221.out --include --trace-ascii log/10/trace1221 --trace-time http://127.0.0.1:36145/1221 --url-query "my name is moo[]" --url-query "yes=s i r" --url-query "v_alue@log/10/1221.txt" --url-query @log/10/1221.txt --url-query "+%3d%3d" --data-urlencode "start=once upon the time" > log/10/stdout1221 2> log/10/stderr1221 1221: 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 1221 === Start of file 1221.txt content to _?!#$'|<> === End of file 1221.txt === Start of file server.cmd Testnum 1221 === End of file server.cmd === Start of file valgrind1221 ==125260== ==125260== Process terminating with default action of signal 4 (SIGILL) ==125260== Illegal opcode at address 0x10B06D ==125260== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125260== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1221 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/12/server/gopher_ipv6_server.pid" --logfile "log/12/gopher_ipv6_server.log" --logdir "log/12" --portfile log/12/server/gopher_ipv6_server.port --config log/12/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/12/gopher_ipv6_verify.out --silent --verbose --globoff "gopher://[::1]:38233/1/verifiedserver" 2>log/12/gopher_ipv6_verify.log RUN: GOPHER-IPv6 server is on PID 124324 port 38233 * pid gopher-ipv6 => 124324 124324 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/12/valgrind1203 ../src/curl -q --output log/12/curl1203.out --include --trace-ascii log/12/trace1203 --trace-time -g gopher://[::1]:38233/1/moo/1203 > log/12/stdout1203 2> log/12/stderr1203 1203: 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 1203 === Start of file gopher_ipv6_server.log 11:17:05.852343 Running GOPHER IPv6 version on port 38233 11:17:05.852416 Wrote pid 124324 to log/12/server/gopher_ipv6_server.pid 11:17:05.852440 Wrote port 38233 to log/12/server/gopher_ipv6_server.port 11:17:06.870652 ====> Client connect 11:17:06.870670 accept_connection 3 returned 4 11:17:06.870681 accept_connection 3 returned 0 11:17:06.870691 Read 17 bytes 11:17:06.870698 Process 17 bytes request 11:17:06.870705 Are-we-friendly question received 11:17:06.870721 Wrote request (17 bytes) input to log/12/server.input 11:17:06.870740 Identifying ourselves as friends 11:17:06.870774 Response sent (18 bytes) and written to log/12/server.response 11:17:06.870782 special request received, no persistency 11:17:06.870788 ====> Client disconnect 0 === End of file gopher_ipv6_server.log === Start of file gopher_ipv6_verify.log * Trying [::1]:38233... * Connected to ::1 (::1) port 38233 { [18 bytes data] * Closing connection === End of file gopher_ipv6_verify.log === Start of file gopher_ipv6_verify.out WE ROOLZ: 124324 === End of file gopher_ipv6_verify.out === Start of file server.cmd Testnum 1203 === End of file server.cmd === Start of file server.response WE ROOLZ: 124324 === End of file server.response === Start of file valgrind1203 ==125376== ==125376== Process terminating with default action of signal 4 (SIGILL) ==125376== Illegal opcode at address 0x10B06D ==125376== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125376== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1203 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/2/valgrind1225 ../src/curl -q --output log/2/curl1225.out --include --trace-ascii log/2/trace1225 --trace-time ftp://127.0.0.1:42239//foo/1225 ftp://127.0.0.1:42239//foo/bar/1225 > log/2/stdout1225 2> log/2/stderr1225 1225: 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 1225 === Start of file server.cmd Testnum 1225 === End of file server.cmd === Start of file valgrind1225 ==125412== ==125412== Process terminating with default action of signal 4 (SIGILL) ==125412== Illegal opcode at address 0x10B06D ==125412== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125412== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1225 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/1/valgrind1227 ../src/curl -q --output log/1/curl1227.out --include --trace-ascii log/1/trace1227 --trace-time ftp://127.0.0.1:35701//1227 --ftp-method nocwd > log/1/stdout1227 2> log/1/stderr1227 1227: 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 1227 === Start of file server.cmd Testnum 1227 === End of file server.cmd === Start of file valgrind1227 ==125472== ==125472== Process terminating with default action of signal 4 (SIGILL) ==125472== Illegal opcode at address 0x10B06D ==125472== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125472== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1227 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/7/valgrind1226 ../src/curl -q --output log/7/curl1226.out --include --trace-ascii log/7/trace1226 --trace-time ftp://127.0.0.1:45903//1226 --ftp-method singlecwd > log/7/stdout1226 2> log/7/stderr1226 1226: 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 1226 === Start of file server.cmd TestnumCMD (33792): ../libtool --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/valgrind1228 ../src/curl -q --output log/3/curl1228.out --include --trace-ascii log/3/trace1228 --trace-time http://example.fake/hoge/1228 http://example.fake/hogege/ -b nonexisting -x 127.0.0.1:46313 > log/3/stdout1228 2> log/3/stderr1228 CMD (33792): ../libtool --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/valgrind1229 ../src/curl -q --output log/6/curl1229.out --include --trace-ascii log/6/trace1229 --trace-time http://%5cuser%22:password@127.0.0.1:41583/1229 --digest > log/6/stdout1229 2> log/6/stderr1229 CMD (33792): ../libtool --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/valgrind1231 ../src/curl -q --output log/8/curl1231.out --include --trace-ascii log/8/trace1231 --trace-time http://127.0.0.1:33791/../../hej/but/who/../1231?stupid=me/../1231#soo/../1231 http://127.0.0.1:33791/../../hej/but/who/../12310001#/../12310001 > log/8/stdout1231 2> log/8/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/9/valgrind1230 ../src/curl -q --output log/9/curl1230.out --include --trace-ascii log/9/trace1230 --trace-time http://[1234:1234:1234::4ce]:40247/wanted/page/1230 -p -x 127.0.0.1:40247 > log/9/stdout1230 2> log/9/stderr1230 CMD (33792): ../libtool --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/valgrind1232 ../src/curl -q --output log/5/curl1232.out --include --trace-ascii log/5/trace1232 --trace-time --proxy http://127.0.0.1:33519 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/5/stdout1232 2> log/5/stderr1232 CMD (33792): ../libtool --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/valgrind1233 ../src/curl -q --output log/4/curl1233.out --include --trace-ascii log/4/trace1233 --trace-time ftp://127.0.0.1:36137/1233 > log/4/stdout1233 2> log/4/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/10/valgrind1234 ../src/curl -q --output log/10/curl1234.out --include --trace-ascii log/10/trace1234 --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/{}{}{}{" > log/10/stdout1234 2> log/10/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/12/valgrind1235 ../src/curl -q --include --trace-ascii log/12/trace1235 --trace-time "127.0.0.1:44175/{1235,1235}{0001,0002}" > log/12/stdout1235 2> log/12/stderr1235 1226 === End of file server.cmd === Start of file valgrind1226 ==125440== ==125440== Process terminating with default action of signal 4 (SIGILL) ==125440== Illegal opcode at address 0x10B06D ==125440== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125440== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1226 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/3/valgrind1228 ../src/curl -q --output log/3/curl1228.out --include --trace-ascii log/3/trace1228 --trace-time http://example.fake/hoge/1228 http://example.fake/hogege/ -b nonexisting -x 127.0.0.1:46313 > log/3/stdout1228 2> log/3/stderr1228 1228: 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 1228 === Start of file server.cmd Testnum 1228 === End of file server.cmd === Start of file valgrind1228 ==125572== ==125572== Process terminating with default action of signal 4 (SIGILL) ==125572== Illegal opcode at address 0x10B06D ==125572== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125572== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1228 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/6/valgrind1229 ../src/curl -q --output log/6/curl1229.out --include --trace-ascii log/6/trace1229 --trace-time http://%5cuser%22:password@127.0.0.1:41583/1229 --digest > log/6/stdout1229 2> log/6/stderr1229 1229: 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 1229 === Start of file server.cmd Testnum 1229 === End of file server.cmd === Start of file valgrind1229 ==125577== ==125577== Process terminating with default action of signal 4 (SIGILL) ==125577== Illegal opcode at address 0x10B06D ==125577== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125577== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1229 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/8/valgrind1231 ../src/curl -q --output log/8/curl1231.out --include --trace-ascii log/8/trace1231 --trace-time http://127.0.0.1:33791/../../hej/but/who/../1231?stupid=me/../1231#soo/../1231 http://127.0.0.1:33791/../../hej/but/who/../12310001#/../12310001 > log/8/stdout1231 2> log/8/stderr1231 1231: 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 1231 === Start of file server.cmd Testnum 1231 === End of file server.cmd === Start of file valgrind1231 ==125595== ==125595== Process terminating with default action of signal 4 (SIGILL) ==125595== Illegal opcode at address 0x10B06D ==125595== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125595== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1231 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/9/valgrind1230 ../src/curl -q --output log/9/curl1230.out --include --trace-ascii log/9/trace1230 --trace-time http://[1234:1234:1234::4ce]:40247/wanted/page/1230 -p -x 127.0.0.1:40247 > log/9/stdout1230 2> log/9/stderr1230 1230: 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 1230 === Start of file server.cmd Testnum 1230 === End of file server.cmd === Start of file valgrind1230 ==125591== ==125591== Process terminating with default action of signal 4 (SIGILL) ==125591== Illegal opcode at address 0x10B06D ==125591== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125591== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1230 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/5/valgrind1232 ../src/curl -q --output log/5/curl1232.out --include --trace-ascii log/5/trace1232 --trace-time --proxy http://127.0.0.1:33519 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/5/stdout1232 2> log/5/stderr1232 1232: 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 1232 === Start of file server.cmd Testnum 1232 === End of file server.cmd === Start of file valgrind1232 ==125775== ==125775== Process terminating with default action of signal 4 (SIGILL) ==125775== Illegal opcode at address 0x10B06D ==125775== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125775== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1232 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/4/valgrind1233 ../src/curl -q --output log/4/curl1233.out --include --trace-ascii log/4/trace1233 --trace-time ftp://127.0.0.1:36137/1233 > log/4/stdout1233 2> log/4/stderr1233 1233: 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 1233 === 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 ==125817== ==125817== Process terminating with default action of signal 4 (SIGILL) ==125817== Illegal opcode at address 0x10B06D ==125817== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125817== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1233 * 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/10/valgrind1234 ../src/curl -q --output log/10/curl1234.out --include --trace-ascii log/10/trace1234 --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/{}{}{}{" > log/10/stdout1234 2> log/10/stderr1234 curl returned 132, when expecting 3 1234: exit FAILED == Contents of files in the log/10/ dir after test 1234 === Start of file server.cmd Testnum 1234 === End of file server.cmd === Start of file valgrind1234 ==125872== ==125872== Process terminating with default action of signal 4 (SIGILL) ==125872== Illegal opcode at address 0x10B06D ==125872== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125872== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1234 CMD (33792): ../libtool --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/valgrind1237 ../src/curl -q --output log/1/curl1237.out --include --trace-ascii log/1/trace1237 --trace-time "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@127.0.0.1:39283/1237" > log/1/stdout1237 2> log/1/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/2/valgrind1236 ../src/curl -q --output log/2/curl1236.out --include --trace-ascii log/2/trace1236 --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/[1-4611686018427387904][1-4611686018427387904]" > log/2/stdout1236 2> log/2/stderr1236 CMD (33792): ../libtool --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/valgrind1239 ../src/curl -q --include --trace-ascii log/3/trace1239 --trace-time http://127.0.0.1:46313/1239 -z "-dec 12 12:00:00 1999 GMT" -w '%{response_code}' > log/3/stdout1239 2> log/3/stderr1239 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/12/valgrind1235 ../src/curl -q --include --trace-ascii log/12/trace1235 --trace-time "127.0.0.1:44175/{1235,1235}{0001,0002}" > log/12/stdout1235 2> log/12/stderr1235 1235: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:07.628031427 +0200 +++ log/12/check-generated 2024-05-23 11:17:07.628031427 +0200 @@ -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/12/ 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 server.cmd Testnum 1235 === End of file server.cmd === Start of file valgrind1235 ==125923== ==125923== Process terminating with default action of signal 4 (SIGILL) ==125923== Illegal opcode at address 0x10B06D ==125923== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125923== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1235 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/1/valgrind1237 ../src/curl -q --output log/1/curl1237.out --include --trace-ascii log/1/trace1237 --trace-time "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@127.0.0.1:39283/1237" > log/1/stdout1237 2> log/1/stderr1237 1237: 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 1237 === Start of file server.cmd Testnum 1237 === End of file server.cmd === Start of file valgrind1237 ==125953== ==125953== Process terminating with default action of signal 4 (SIGILL) ==125953== Illegal opcode at address 0x10B06D ==125953== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125953== by 0x10B06D: 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/2/valgrind1236 ../src/curl -q --output log/2/curl1236.out --include --trace-ascii log/2/trace1236 --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/[1-4611686018427387904][1-4611686018427387904]" > log/2/stdout1236 2> log/2/stderr1236 curl returned 132, when expecting 3 1236: exit FAILED == Contents of files in the log/2/ dir after test 1236 === Start of file server.cmd Testnum 1236 === End of file server.cmd === Start of file valgrind1236 ==125941== ==125941== Process terminating with default action of signal 4 (SIGILL) ==125941== Illegal opcode at address 0x10B06D ==125941== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==125941== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1236 CMD (33792): ../libtool --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/valgrind1241 ../src/curl -q --output log/8/curl1241.out --include --trace-ascii log/8/trace1241 --trace-time --path-as-is --proxy http://127.0.0.1:33791 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/8/stdout1241 2> log/8/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/9/valgrind1242 ../src/curl -q --output log/9/curl1242.out --include --trace-ascii log/9/trace1242 --trace-time tftp://127.0.0.1:45146//1242 --tftp-no-options > log/9/stdout1242 2> log/9/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/6/valgrind1240 ../src/curl -q --output log/6/curl1240.out --include --trace-ascii log/6/trace1240 --trace-time "127.0.0.1:41583/0[0-1]/1240" > log/6/stdout1240 2> log/6/stderr1240 CMD (33792): ../libtool --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/valgrind1245 ../src/curl -q --output log/4/curl1245.out --include --trace-ascii log/4/trace1245 --trace-time --location --proto +all,-ftp --proto-redir -all,+ftp http://127.0.0.1:41947/1245 > log/4/stdout1245 2> log/4/stderr1245 CMD (33792): ../libtool --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/valgrind1246 ../src/curl -q --output log/10/curl1246.out --include --trace-ascii log/10/trace1246 --trace-time --proxy http://127.0.0.1:36145 http://test.remote.haxx.se.1246:36145#@127.0.0.1/tricked.html no-scheme-url.com.1246:36145#@127.127.127.127/again.html > log/10/stdout1246 2> log/10/stderr1246 CMD (33792): ../libtool --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/valgrind1224 ../src/curl -q --output log/11/curl1224.out --include --trace-ascii log/11/trace1224 --trace-time ftp://127.0.0.1:33323//1224 > log/11/stdout1224 2> log/11/stderr1224 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/3/valgrind1239 ../src/curl -q --include --trace-ascii log/3/trace1239 --trace-time http://127.0.0.1:46313/1239 -z "-dec 12 12:00:00 1999 GMT" -w '%{response_code}' > log/3/stdout1239 2> log/3/stderr1239 1239: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:07.724700079 +0200 +++ log/3/check-generated 2024-05-23 11:17:07.724700079 +0200 @@ -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/3/ 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 server.cmd Testnum 1239 === End of file server.cmd === Start of file valgrind1239 ==126066== ==126066== Process terminating with default action of signal 4 (SIGILL) ==126066== Illegal opcode at address 0x10B06D ==126066== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126066== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1239 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/6/valgrind1240 ../src/curl -q --output log/6/curl1240.out --include --trace-ascii log/6/trace1240 --trace-time "127.0.0.1:41583/0[0-1]/1240" > log/6/stdout1240 2> log/6/stderr1240 1240: 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 1240 === Start of file server.cmd Testnum 1240 === End of file server.cmd === Start of file valgrind1240 ==126089== ==126089== Process terminating with default action of signal 4 (SIGILL) ==126089== Illegal opcode at address 0x10B06D ==126089== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126089== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1240 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/8/valgrind1241 ../src/curl -q --output log/8/curl1241.out --include --trace-ascii log/8/trace1241 --trace-time --path-as-is --proxy http://127.0.0.1:33791 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/8/stdout1241 2> log/8/stderr1241 1241: 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 1241 === Start of file server.cmd Testnum 1241 === End of file server.cmd === Start of file valgrind1241 ==126094== ==126094== Process terminating with default action of signal 4 (SIGILL) ==126094== Illegal opcode at address 0x10B06D ==126094== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126094== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1241 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/9/valgrind1242 ../src/curl -q --output log/9/curl1242.out --include --trace-ascii log/9/trace1242 --trace-time tftp://127.0.0.1:45146//1242 --tftp-no-options > log/9/stdout1242 2> log/9/stderr1242 1242: 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 1242 === Start of file server.cmd Testnum 1242 === End of file server.cmd === Start of file valgrind1242 ==126097== ==126097== Process terminating with default action of signal 4 (SIGILL) ==126097== Illegal opcode at address 0x10B06D ==126097== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126097== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1242 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/4/valgrind1245 ../src/curl -q --output log/4/curl1245.out --include --trace-ascii log/4/trace1245 --trace-time --location --proto +all,-ftp --proto-redir -all,+ftp http://127.0.0.1:41947/1245 > log/4/stdout1245 2> log/4/stderr1245 1245: 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 1245 === Start of file server.cmd Testnum 1245 === End of file server.cmd === Start of file valgrind1245 ==126264== ==126264== Process terminating with default action of signal 4 (SIGILL) ==126264== Illegal opcode at address 0x10B06D ==126264== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126264== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1245 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/10/valgrind1246 ../src/curl -q --output log/10/curl1246.out --include --trace-ascii log/10/trace1246 --trace-time --proxy http://127.0.0.1:36145 http://test.remote.haxx.se.1246:36145#@127.0.0.1/tricked.html no-scheme-url.com.1246:36145#@127.127.127.127/again.html > log/10/stdout1246 2> log/10/stderr1246 1246: 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 1246 === Start of file server.cmd Testnum 1246 === End of file server.cmd === Start of file valgrind1246 ==126312== ==126312== Process terminating with default action of signal 4 (SIGILL) ==126312== Illegal opcode at address 0x10B06D ==126312== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126312== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1246 startnew: perl -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 33323 (log/11/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:33323/verifiedserver" 2>log/11/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 125406 port 33323 * pid ftp => 125406 125406 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/11/valgrind1224 ../src/curl -q --output log/11/curl1224.out --include --trace-ascii log/11/trace1224 --trace-time ftp://127.0.0.1:33323//1224 > log/11/stdout1224 2> log/11/stderr1224 1224: 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 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/12/valgrind1247 ../src/curl -q --output log/12/curl1247.out --include --trace-ascii log/12/trace1247 --trace-time --fail-early h1234://127.0.0.1:44175/1247 http://127.0.0.1:44175/1247 > log/12/stdout1247 2> log/12/stderr1247 CMD (33792): ../libtool --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-time http://user:secret@127.0.0.1:39283/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/2/valgrind1249 ../src/curl -q --output log/2/curl1249.out --include --trace-ascii log/2/trace1249 --trace-time http://user:secret@127.0.0.1:44205/1249 --proxy http://dummy:47/ --max-time 5 > log/2/stdout1249 2> log/2/stderr1249 24 === Start of file ftp_server.log 11:17:06.508773 FTP server listens on port IPv4/33323 11:17:06.508847 logged pid 125406 in log/11/server/ftp_server.pid 11:17:06.508871 Awaiting input 11:17:07.486842 ====> Client connect 11:17:07.486992 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 11:17:07.487253 < "USER anonymous" 11:17:07.487286 > "331 We are happy you popped in![CR][LF]" 11:17:07.487430 < "PASS ftp@example.com" 11:17:07.487455 > "230 Welcome you silly person[CR][LF]" 11:17:07.487581 < "PWD" 11:17:07.487607 > "257 "/" is current directory[CR][LF]" 11:17:07.487733 < "EPSV" 11:17:07.487757 ====> Passive DATA channel requested by client 11:17:07.487767 DATA sockfilt for passive data channel starting... 11:17:07.489530 DATA sockfilt for passive data channel started (pid 126346) 11:17:07.489628 DATA sockfilt for passive data channel listens on port 33799 11:17:07.489670 > "229 Entering Passive Mode (|||33799|)[LF]" 11:17:07.489685 Client has been notified that DATA conn will be accepted on port 33799 11:17:07.489913 Client connects to port 33799 11:17:07.489940 ====> Client established passive DATA connection on port 33799 11:17:07.489997 < "TYPE I" 11:17:07.490023 > "200 I modify TYPE as you wanted[CR][LF]" 11:17:07.490164 < "SIZE verifiedserver" 11:17:07.490196 > "213 18[CR][LF]" 11:17:07.490336 < "RETR verifiedserver" 11:17:07.490366 > "150 Binary junk (18 bytes).[CR][LF]" 11:17:07.490432 =====> Closing passive DATA connection... 11:17:07.490447 Server disconnects passive DATA connection 11:17:07.490667 Server disconnected passive DATA connection 11:17:07.490695 DATA sockfilt for passive data channel quits (pid 126346) 11:17:07.490865 DATA sockfilt for passive data channel quit (pid 126346) 11:17:07.490888 =====> Closed passive DATA connection 11:17:07.490912 > "226 File transfer complete[CR][LF]" 11:17:07.538979 < "QUIT" 11:17:07.539023 > "221 bye bye baby[CR][LF]" 11:17:07.539730 MAIN sockfilt said DISC 11:17:07.539751 ====> Client disconnected 11:17:07.539795 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 11:17:06.025784 Running IPv4 version 11:17:06.025842 Listening on port 33323 11:17:06.025870 Wrote pid 125478 to log/11/server/ftp_sockctrl.pid 11:17:06.025892 Wrote port 33323 to log/11/server/ftp_server.port 11:17:06.026017 Received PING (on stdin) 11:17:07.004089 ====> Client connect 11:17:07.004328 Received DATA (on stdin) 11:17:07.004341 > 160 bytes data, server => client 11:17:07.004350 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 11:17:07.004358 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 11:17:07.004365 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 11:17:07.004432 < 16 bytes data, client => server 11:17:07.004442 'USER anonymous\r\n' 11:17:07.004615 Received DATA (on stdin) 11:17:07.004625 > 33 bytes data, server => client 11:17:07.004632 '331 We are happy you popped in!\r\n' 11:17:07.004677 < 22 bytes data, client => server 11:17:07.004685 'PASS ftp@example.com\r\n' 11:17:07.004783 Received DATA (on stdin) 11:17:07.004792 > 30 bytes data, server => client 11:17:07.004800 '230 Welcome you silly person\r\n' 11:17:07.004839 < 5 bytes data, client => server 11:17:07.004847 'PWD\r\n' 11:17:07.004932 Received DATA (on stdin) 11:17:07.004940 > 30 bytes data, server => client 11:17:07.004947 '257 "/" is current directory\r\n' 11:17:07.004994 < 6 bytes data, client => server 11:17:07.005003 'EPSV\r\n' 11:17:07.007017 Received DATA (on stdin) 11:17:07.007031 > 38 bytes data, server => client 11:17:07.007041 '229 Entering Passive Mode (|||33799|)\n' 11:17:07.007169 < 8 bytes data, client => server 11:17:07.007183 'TYPE I\r\n' 11:17:07.007349 Received DATA (on stdin) 11:17:07.007360 > 33 bytes data, server => client 11:17:07.007369 '200 I modify TYPE as you wanted\r\n' 11:17:07.007417 < 21 bytes data, client => server 11:17:07.007426 'SIZE verifiedserver\r\n' 11:17:07.007526 Received DATA (on stdin) 11:17:07.007537 > 8 bytes data, server => client 11:17:07.007545 '213 18\r\n' 11:17:07.007591 < 21 bytes data, client => server 11:17:07.007600 'RETR verifiedserver\r\n' 11:17:07.007777 Received DATA (on stdin) 11:17:07.007788 > 29 bytes data, server => client 11:17:07.007797 '150 Binary junk (18 bytes).\r\n' 11:17:07.008244 Received DATA (on stdin) 11:17:07.008255 > 28 bytes data, server => client 11:17:07.008264 '226 File transfer complete\r\n' 11:17:07.056137 < 6 bytes data, client => server 11:17:07.056169 'QUIT\r\n' 11:17:07.056350 Received DATA (on stdin) 11:17:07.056358 > 18 bytes data, server => client 11:17:07.056366 '221 bye bye baby\r\n' 11:17:07.057013 ====> Client disconnect 11:17:07.057119 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 11:17:07.006572 Running IPv4 version 11:17:07.006640 Listening on port 33799 11:17:07.006669 Wrote pid 126346 to log/11/server/ftp_sockdata.pid 11:17:07.006802 Received PING (on stdin) 11:17:07.006880 Received PORT (on stdin) 11:17:07.007200 ====> Client connect 11:17:07.007841 Received DATA (on stdin) 11:17:07.007854 > 18 bytes data, server => client 11:17:07.007863 'WE ROOLZ: 125406\r\n' 11:17:07.007889 Received DISC (on stdin) 11:17:07.007899 ====> Client forcibly disconnected 11:17:07.008029 Received QUIT (on stdin) 11:17:07.008039 quits 11:17:07.008079 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1224 === End of file server.cmd === Start of file valgrind1224 ==126377== ==126377== Process terminating with default action of signal 4 (SIGILL) ==126377== Illegal opcode at address 0x10B06D ==126377== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126377== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1224 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/12/valgrind1247 ../src/curl -q --output log/12/curl1247.out --include --trace-ascii log/12/trace1247 --trace-time --fail-early h1234://127.0.0.1:44175/1247 http://127.0.0.1:44175/1247 > log/12/stdout1247 2> log/12/stderr1247 curl returned 132, when expecting 1 1247: exit FAILED == Contents of files in the log/12/ dir after test 1247 === Start of file server.cmd Testnum 1247 === End of file server.cmd === Start of file valgrind1247 ==126429== ==126429== Process terminating with default action of signal 4 (SIGILL) ==126429== Illegal opcode at address 0x10B06D ==126429== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126429== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1247 test 1248...[Access a non-proxied host with using the combination of --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-time http://user:secret@127.0.0.1:39283/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 server.cmd Testnum 1248 === End of file server.cmd === Start of file valgrind1248 ==126430== ==126430== Process terminating with default action of signal 4 (SIGILL) ==126430== Illegal opcode at address 0x10B06D ==126430== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126430== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1248 setenv NO_PROXY = 127.0.0.1 test 1249...[Access a non-proxied host with using the combination of --proxy option and NO_PROXY env var] ../libtCMD (33792): ../libtool --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/valgrind1253 ../src/curl -q --output log/9/curl1253.out --include --trace-ascii log/9/trace1253 --trace-time http://somewhere.example.com/1253 --proxy http://127.0.0.1:40247 --noproxy 127.0.0.1 > log/9/stdout1253 2> log/9/stderr1253 CMD (33792): ../libtool --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/valgrind1252 ../src/curl -q --output log/8/curl1252.out --include --trace-ascii log/8/trace1252 --trace-time http://127.0.0.1:33791/1252 --proxy http://127.0.0.1:33791 --noproxy 127.0.0.1 > log/8/stdout1252 2> log/8/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/3/valgrind1250 ../src/curl -q --output log/3/curl1250.out --include --trace-ascii log/3/trace1250 --trace-time http://user:secret@127.0.0.1:46313/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/6/valgrind1251 ../src/curl -q --output log/6/curl1251.out --include --trace-ascii log/6/trace1251 --trace-time http://user:secret@127.0.0.1:41583/1251 --max-time 5 > log/6/stdout1251 2> log/6/stderr1251 CMD (33792): ../libtool --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/valgrind1254 ../src/curl -q --output log/4/curl1254.out --include --trace-ascii log/4/trace1254 --trace-time http://somewhere.example.com/1254 --proxy http://127.0.0.1:41947 --noproxy "" > log/4/stdout1254 2> log/4/stderr1254 CMD (33792): ../libtool --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/valgrind1255 ../src/curl -q --output log/10/curl1255.out --include --trace-ascii log/10/trace1255 --trace-time http://127.0.0.1:36145/1255 --noproxy 127.0.0.1 > log/10/stdout1255 2> log/10/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/11/valgrind1256 ../src/curl -q --output log/11/curl1256.out --include --trace-ascii log/11/trace1256 --trace-time http://somewhere.example.com/1256 --noproxy 127.0.0.1 > log/11/stdout1256 2> log/11/stderr1256 ool --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/valgrind1249 ../src/curl -q --output log/2/curl1249.out --include --trace-ascii log/2/trace1249 --trace-time http://user:secret@127.0.0.1:44205/1249 --proxy http://dummy:47/ --max-time 5 > log/2/stdout1249 2> log/2/stderr1249 1249: 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 1249 === Start of file server.cmd Testnum 1249 === End of file server.cmd === Start of file valgrind1249 ==126443== ==126443== Process terminating with default action of signal 4 (SIGILL) ==126443== Illegal opcode at address 0x10B06D ==126443== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126443== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1249 setenv NO_PROXY = example.com test 1253...[Under condition using --proxy, override NO_PROXY by --nproxy 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/9/valgrind1253 ../src/curl -q --output log/9/curl1253.out --include --trace-ascii log/9/trace1253 --trace-time http://somewhere.example.com/1253 --proxy http://127.0.0.1:40247 --noproxy 127.0.0.1 > log/9/stdout1253 2> log/9/stderr1253 1253: 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 1253 === Start of file server.cmd Testnum 1253 === End of file server.cmd === Start of file valgrind1253 ==126585== ==126585== Process terminating with default action of signal 4 (SIGILL) ==126585== Illegal opcode at address 0x10B06D ==126585== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126585== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1253 setenv NO_PROXY = example.com test 1252...[Under condition using --proxy, override NO_PROXY by --nproxy 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/8/valgrind1252 ../src/curl -q --output log/8/curl1252.out --include --trace-ascii log/8/trace1252 --trace-time http://127.0.0.1:33791/1252 --proxy http://127.0.0.1:33791 --noproxy 127.0.0.1 > log/8/stdout1252 2> log/8/stderr1252 1252: 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 1252 === Start of file server.cmd Testnum 1252 === End of file server.cmd === Start of file valgrind1252 ==126586== ==126586== Process terminating with default action of signal 4 (SIGILL) ==126586== Illegal opcode at address 0x10B06D ==126586== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126586== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1252 setenv http_proxy = http://dummy:45097/ test 1250...[Access a non-proxied host with using the combination of http_proxy env var 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/3/valgrind1250 ../src/curl -q --output log/3/curl1250.out --include --trace-ascii log/3/trace1250 --trace-time http://user:secret@127.0.0.1:46313/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 server.cmd Testnum 1250 === End of file server.cmd === Start of file valgrind1250 ==126580== ==126580== Process terminating with default action of signal 4 (SIGILL) ==126580== Illegal opcode at address 0x10B06D ==126580== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126580== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1250 setenv http_proxy = http://dummy:42463/ setenv NO_PROXY = 127.0.0.1 test 1251...[Access a non-proxied host with using the combination of 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/6/valgrind1251 ../src/curl -q --output log/6/curl1251.out --include --trace-ascii log/6/trace1251 --trace-time http://user:secret@127.0.0.1:41583/1251 --max-time 5 > log/6/stdout1251 2> log/6/stderr1251 1251: 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 1251 === Start of file server.cmd Testnum 1251 === End of file server.cmd === Start of file valgrind1251 ==126579== ==126579== Process terminating with default action of signal 4 (SIGILL) ==126579== Illegal opcode at address 0x10B06D ==126579== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126579== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1251 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/4/valgrind1254 ../src/curl -q --output log/4/curl1254.out --include --trace-ascii log/4/trace1254 --trace-time http://somewhere.example.com/1254 --proxy http://127.0.0.1:41947 --noproxy "" > log/4/stdout1254 2> log/4/stderr1254 1254: 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 1254 === Start of file server.cmd Testnum 1254 === End of file server.cmd === Start of file valgrind1254 ==126780== ==126780== Process terminating with default action of signal 4 (SIGILL) ==126780== Illegal opcode at address 0x10B06D ==126780== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126780== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1254 setenv http_proxy = http://127.0.0.1:36145 setenv NO_PROXY = example.com test 1255...[Under condition using http_proxy, override NO_PROXY by --nproxy 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/10/valgrind1255 ../src/curl -q --output log/10/curl1255.out --include --trace-ascii log/10/trace1255 --trace-time http://127.0.0.1:36145/1255 --noproxy 127.0.0.1 > log/10/stdout1255 2> log/10/stderr1255 1255: 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 1255 === Start of file server.cmd Testnum 1255 === End of file server.cmd === Start of file valgrind1255 ==126794== ==126794== Process terminating with default action of signal 4 (SIGILL) ==126794== Illegal opcode at address 0x10B06D ==126794== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126794== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1255 setenv http_proxy = http://127.0.0.1:35843 setenv NO_PROXY = example.com test 1256...[Under condition using http_proxy, override NO_PROXY by --nproxy 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/11/valgrind1256 ../src/curl -q --output log/11/curl1256.out --include --trace-ascii log/11/trace1256 --trace-time http://somewhere.example.com/1256 --noproCMD (33792): ../libtool --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/valgrind1238 ../src/curl -q --output log/7/curl1238.out --include --trace-ascii log/7/trace1238 --trace-time tftp://127.0.0.1:39859//1238 -Y1000 -y2 > log/7/stdout1238 2> log/7/stderr1238 RUN: Process with pid 125939 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/valgrind1259 ../src/curl -q --output log/2/curl1259.out --include --trace-ascii log/2/trace1259 --trace-time "http://user:pass;word@127.0.0.1:44205/we/want/1259" > log/2/stdout1259 2> log/2/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/12/valgrind1257 ../src/curl -q --output log/12/curl1257.out --include --trace-ascii log/12/trace1257 --trace-time http://somewhere.example.com/1257 --noproxy "" > log/12/stdout1257 2> log/12/stderr1257 CMD (33792): ../libtool --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/valgrind1258 ../src/curl -q --output log/1/curl1258.out --include --trace-ascii log/1/trace1258 --trace-time http://127.0.0.1:39283/we/want/1258 http://127.0.0.1:39283/we/want?hoge=fuga -b non-existing -H "Host: localhost" > log/1/stdout1258 2> log/1/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/8/valgrind1261 ../src/curl -q --include --trace-ascii log/8/trace1261 --trace-time http://127.0.0.1:33791/we/want/our/1261 -w '%{redirect_url}\n' --location --max-redirs 0 > log/8/stdout1261 2> log/8/stderr1261 xy 127.0.0.1 > log/11/stdout1256 2> log/11/stderr1256 1256: 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 1256 === Start of file server.cmd Testnum 1256 === End of file server.cmd === Start of file valgrind1256 ==126888== ==126888== Process terminating with default action of signal 4 (SIGILL) ==126888== Illegal opcode at address 0x10B06D ==126888== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126888== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1256 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/2/valgrind1259 ../src/curl -q --output log/2/curl1259.out --include --trace-ascii log/2/trace1259 --trace-time "http://user:pass;word@127.0.0.1:44205/we/want/1259" > log/2/stdout1259 2> log/2/stderr1259 1259: 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 1259 === Start of file server.cmd Testnum 1259 === End of file server.cmd === Start of file valgrind1259 ==127002== ==127002== Process terminating with default action of signal 4 (SIGILL) ==127002== Illegal opcode at address 0x10B06D ==127002== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127002== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1259 setenv http_proxy = http://127.0.0.1:44175 setenv NO_PROXY = example.com test 1257...[Under condition using http_proxy, override NO_PROXY by --nproxy 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/12/valgrind1257 ../src/curl -q --output log/12/curl1257.out --include --trace-ascii log/12/trace1257 --trace-time http://somewhere.example.com/1257 --noproxy "" > log/12/stdout1257 2> log/12/stderr1257 1257: 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 1257 === Start of file server.cmd Testnum 1257 === End of file server.cmd === Start of file valgrind1257 ==126990== ==126990== Process terminating with default action of signal 4 (SIGILL) ==126990== Illegal opcode at address 0x10B06D ==126990== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126990== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1257 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/1/valgrind1258 ../src/curl -q --output log/1/curl1258.out --include --trace-ascii log/1/trace1258 --trace-time http://127.0.0.1:39283/we/want/1258 http://127.0.0.1:39283/we/want?hoge=fuga -b non-existing -H "Host: localhost" > log/1/stdout1258 2> log/1/stderr1258 1258: 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 1258 === Start of file server.cmd Testnum 1258 === End of file server.cmd === Start of file valgrind1258 ==126991== ==126991== Process terminating with default action of signal 4 (SIGILL) ==126991== Illegal opcode at address 0x10B06D ==126991== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126991== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1258 CMD (33792): ../libtool --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/valgrind1260 ../src/curl -q --output log/9/curl1260.out --include --trace-ascii log/9/trace1260 --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/9/stdout1260 2> log/9/stderr1260 CMD (33792): ../libtool --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/valgrind1263 ../src/curl -q --output log/6/curl1263.out --include --trace-ascii log/6/trace1263 --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/6/stdout1263 2> log/6/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/3/valgrind1262 ../src/curl -q --output log/3/curl1262.out --include --trace-ascii log/3/trace1262 --trace-time ftp://127.0.0.1:45493/blalbla/1262 -z "-1 jan 2001" > log/3/stdout1262 2> log/3/stderr1262 CMD (33792): ../libtool --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/valgrind1243 ../src/curl -q --output log/5/curl1243.out --include --trace-ascii log/5/trace1243 --trace-time -T log/5/test1243.txt tftp://127.0.0.1:48692// --tftp-no-options > log/5/stdout1243 2> log/5/stderr1243 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1275.pl /startdir/src/curl/tests/.. > log/5/stdout1275 2> log/5/stderr1275 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1276.pl /startdir/src/curl/tests/.. > log/5/stdout1276 2> log/5/stderr1276 CMD (33792): ../libtool --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-time -g "http://127.0.0.1 www.example.com/we/want/1264" > log/4/stdout1264 2> log/4/stderr1264 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/8/valgrind1261 ../src/curl -q --include --trace-ascii log/8/trace1261 --trace-time http://127.0.0.1:33791/we/want/our/1261 -w '%{redirect_url}\n' --location --max-redirs 0 > log/8/stdout1261 2> log/8/stderr1261 1261: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:08.868056897 +0200 +++ log/8/check-generated 2024-05-23 11:17:08.868056897 +0200 @@ -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:33791/we/want/our/data/10290002.txt?coolsite=yes[LF] == Contents of files in the log/8/ 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:33791/we/want/our/data/10290002.txt?coolsite=yes[LF] === End of file check-expected === Start of file server.cmd Testnum 1261 === End of file server.cmd === Start of file valgrind1261 ==127148== ==127148== Process terminating with default action of signal 4 (SIGILL) ==127148== Illegal opcode at address 0x10B06D ==127148== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127148== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1261 * 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/9/valgrind1260 ../src/curl -q --output log/9/curl1260.out --include --trace-ascii log/9/trace1260 --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/9/stdout1260 2> log/9/stderr1260 curl returned 132, when expecting 3 1260: exit FAILED == Contents of files in the log/9/ dir after test 1260 === Start of file server.cmd Testnum 1260 === End of file server.cmd === Start of file valgrind1260 ==127136== ==127136== Process terminating with default action of signal 4 (SIGILL) ==127136== Illegal opcode at address 0x10B06D ==127136== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127136== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1260 * 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/6/valgrind1263 ../src/curl -q --output log/6/curl1263.out --include --trace-ascii log/6/trace1263 --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/6/stdout1263 2> log/6/stderr1263 curl returned 132, when expecting 3 1263: exit FAILED == Contents of files in the log/6/ dir after test 1263 === Start of file server.cmd Testnum 1263 === End of file server.cmd === Start of file valgrind1263 ==127200== ==127200== Process terminating with default action of signal 4 (SIGILL) ==127200== Illegal opcode at address 0x10B06D ==127200== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127200== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1263 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/3/valgrind1262 ../src/curl -q --output log/3/curl1262.out --include --trace-ascii log/3/trace1262 --trace-time ftp://127.0.0.1:45493/blalbla/1262 -z "-1 jan 2001" > log/3/stdout1262 2> log/3/stderr1262 1262: 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 1262 === Start of file server.cmd Testnum 1262 === End of file server.cmd === Start of file valgrind1262 ==127170== ==127170== Process terminating with default action of signal 4 (SIGILL) ==127170== Illegal opcode at address 0x10B06D ==127170== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127170== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1262 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/5/server/tftp_server.pid" --portfile "log/5/server/tftp_server.port" --logfile "log/5/tftp_server.log" --logdir "log/5" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:48692/verifiedserver" 2>log/5/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 126262 port 48692 * pid tftp => 126262 126262 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/5/valgrind1243 ../src/curl -q --output log/5/curl1243.out --include --trace-ascii log/5/trace1243 --trace-time -T log/5/test1243.txt tftp://127.0.0.1:48692// --tftp-no-options > log/5/stdout1243 2> log/5/stderr1243 1243: 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 1243 === 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 11:17:07.946955 Wrote pid 126262 to log/5/server/tftp_server.pid 11:17:07.947006 Wrote port 48692 to log/5/server/tftp_server.port 11:17:07.947014 Running IPv4 version on port UDP/48692 11:17:08.996899 trying to get file: verifiedserver mode 1 11:17:08.996917 Are-we-friendly question received 11:17:08.996927 write 11:17:08.996948 read 11:17:08.997540 read: 4 11:17:08.997583 end of one transfer === End of file tftp_server.log === Start of file valgrind1243 ==127349== ==127349== Process terminating with default action of signal 4 (SIGILL) ==127349== Illegal opcode at address 0x10B06D ==127349== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127349== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1243 * starts no server test 1275...[Verify capital letters after period in markdown files] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1275.pl /startdir/src/curl/tests/.. > log/5/stdout1275 2> log/5/stderr1275 valgrind SKIPPED -------e--- OK (1130 out of 1513, remaining: 00:29, took 0.013s, duration: 01:27) * starts no server test 1276...[Verify lib/optiontable.pl] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1276.pl /startdir/src/curl/tests/.. > log/5/stdout1276 2> log/5/stderr1276 valgrind SKIPPED -------e--- OK (1131 out of 1513, remaining: 00:29, took 0.020s, duration: 01:27) * 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-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 server.cmd Testnum 1264 === End of file server.cmd === Start of file valgrind1264 ==127403== ==127403== Process terminating with default action of signal 4 (SIGILL) ==127403== Illegal opcode at address 0x10B06D ==127403== at 0x10B06D: UnknownInlineCMD (33792): ../libtool --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/valgrind1266 ../src/curl -q --output log/11/curl1266.out --include --trace-ascii log/11/trace1266 --trace-time http://127.0.0.1:35843/1266 --http0.9 > log/11/stdout1266 2> log/11/stderr1266 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl --heading=EXPORTS --sort /startdir/src/curl/tests/.. > log/11/stdout1279 2> log/11/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/12/valgrind1268 ../src/curl -q --output log/12/curl1268.out --include --trace-ascii log/12/trace1268 --trace-time --stderr log/12/moo1268 --unix-socket -k hej://moo > log/12/stdout1268 2> log/12/stderr1268 dFun (string_fortified.h:59) ==127403== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1264 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/11/valgrind1266 ../src/curl -q --output log/11/curl1266.out --include --trace-ascii log/11/trace1266 --trace-time http://127.0.0.1:35843/1266 --http0.9 > log/11/stdout1266 2> log/11/stderr1266 1266: 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 1266 === Start of file server.cmd swsclose Testnum 1266 === End of file server.cmd === Start of file valgrind1266 ==127451== ==127451== Process terminating with default action of signal 4 (SIGILL) ==127451== Illegal opcode at address 0x10B06D ==127451== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127451== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1266 * starts no server test 1279...[Verify libcurl.def against CURL_EXTERN declarations] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl --heading=EXPORTS --sort /startdir/src/curl/tests/.. > log/11/stdout1279 2> log/11/stderr1279 valgrind SKIPPED s------e--- OK (1134 out of 1513, remaining: 00:29, took 0.023s, 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/1/valgrind1269 ../src/curl -q --output log/1/curl1269.out --include --trace-ascii log/1/trace1269 --trace-time --retry 3 --retry-delay 9223372036854776 http://127.0.0.1:47/1269 > log/1/stdout1269 2> log/1/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/2/valgrind1267 ../src/curl -q --output log/2/curl1267.out --include --trace-ascii log/2/trace1267 --trace-time http://127.0.0.1:44205/1267 --http0.9 > log/2/stdout1267 2> log/2/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/9/valgrind1271 ../src/curl -q --output log/9/curl1271.out --include --trace-ascii log/9/trace1271 --trace-time http://127.0.0.1:40247/we/want/our/1271 -w @log/9/blank1271 > log/9/stdout1271 2> log/9/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/8/valgrind1270 ../src/curl -q --include --trace-ascii log/8/trace1270 --trace-time http://127.0.0.1:33791/we/want/our/1270 -w '%{redirect_url}\n' -s > log/8/stdout1270 2> log/8/stderr1270 * starts no server test 1268...[file name 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/12/valgrind1268 ../src/curl -q --output log/12/curl1268.out --include --trace-ascii log/12/trace1268 --trace-time --stderr log/12/moo1268 --unix-socket -k hej://moo > log/12/stdout1268 2> log/12/stderr1268 1268: output (log/12/moo1268) FAILED: --- log/12/check-expected 2024-05-23 11:17:09.378067373 +0200 +++ log/12/check-generated 2024-05-23 11:17:09.378067373 +0200 @@ -1,2 +0,0 @@ -Warning: The file name argument '-k' looks like a flag.[LF] -curl: (1) Protocol "hej" not supported[LF] == Contents of files in the log/12/ dir after test 1268 === Start of file check-expected Warning: The file name argument '-k' looks like a flag.[LF] curl: (1) Protocol "hej" not supported[LF] === End of file check-expected === Start of file server.cmd Testnum 1268 === End of file server.cmd === Start of file valgrind1268 ==127514== ==127514== Process terminating with default action of signal 4 (SIGILL) ==127514== Illegal opcode at address 0x10B06D ==127514== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127514== by 0x10B06D: 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/1/valgrind1269 ../src/curl -q --output log/1/curl1269.out --include --trace-ascii log/1/trace1269 --trace-time --retry 3 --retry-delay 9223372036854776 http://127.0.0.1:47/1269 > log/1/stdout1269 2> log/1/stderr1269 curl returned 132, when expecting 2 1269: exit FAILED == Contents of files in the log/1/ dir after test 1269 === Start of file server.cmd Testnum 1269 === End of file server.cmd === Start of file valgrind1269 ==127512== ==127512== Process terminating with default action of signal 4 (SIGILL) ==127512== Illegal opcode at address 0x10B06D ==127512== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127512== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1269 test 1267...[HTTP GET with a 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/2/valgrind1267 ../src/curl -q --output log/2/curl1267.out --include --trace-ascii log/2/trace1267 --trace-time http://127.0.0.1:44205/1267 --http0.9 > log/2/stdout1267 2> log/2/stderr1267 1267: 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 1267 === Start of file server.cmd swsclose Testnum 1267 === End of file server.cmd === Start of file valgrind1267 ==127499== ==127499== Process terminating with default action of signal 4 (SIGILL) ==127499== Illegal opcode at address 0x10B06D ==127499== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127499== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1267 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/9/valgrind1271 ../src/curl -q --output log/9/curl1271.out --include --trace-ascii log/9/trace1271 --trace-time http://127.0.0.1:40247/we/want/our/1271 -w @log/9/blank1271 > log/9/stdout1271 2> log/9/stderr1271 1271: 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 1271 === Start of file server.cmd Testnum 1271 === End of file server.cmd === Start of file valgrind1271 ==127658== ==127658== Process terminating with default action of signal 4 (SIGILL) ==127658== Illegal opcode at address 0x10B06D ==127658== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127658== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1271 CMD (33792): ../libtool --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/valgrind1273 ../src/curl -q --output log/6/curl1273.out --include --trace-ascii log/6/trace1273 --trace-time http://127.0.0.1:41583/1273 -C - -f > log/6/stdout1273 2> log/6/stderr1273 RUN: Process with pid 75075 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/3/valgrind1274 ../src/curl -q --output log/3/curl1274.out --include --trace-ascii log/3/trace1274 --trace-time http://127.0.0.1:46313/1274 -D log/3/out1274 > log/3/stdout1274 2> log/3/stderr1274 CMD (0): ../src/curl --max-time 13 --output log/10/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:42217/verifiedserver" 2>log/10/http_ipv6_verify.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/5/valgrind1277 ../src/curl -q --output log/5/curl1277.out --include --trace-ascii log/5/trace1277 --trace-time http://127.0.0.1:33519/1277 --tr-encoding --compressed > log/5/stdout1277 2> log/5/stderr1277 CMD (33792): ../libtool --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/valgrind1278 ../src/curl -q --include --trace-ascii log/4/trace1278 --trace-time http://127.0.0.1:41947/1278 --no-progress-meter -o log/4/out1278 --no-remote-name -w '%{stderr}yes\n' > log/4/stdout1278 2> log/4/stderr1278 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/8/valgrind1270 ../src/curl -q --include --trace-ascii log/8/trace1270 --trace-time http://127.0.0.1:33791/we/want/our/1270 -w '%{redirect_url}\n' -s > log/8/stdout1270 2> log/8/stderr1270 1270: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:09.421401597 +0200 +++ log/8/check-generated 2024-05-23 11:17:09.421401597 +0200 @@ -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/8/ 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 server.cmd Testnum 1270 === End of file server.cmd === Start of file valgrind1270 ==127644== ==127644== Process terminating with default action of signal 4 (SIGILL) ==127644== Illegal opcode at address 0x10B06D ==127644== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127644== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1270 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/3/valgrind1274 ../src/curl -q --output log/3/curl1274.out --include --trace-ascii log/3/trace1274 --trace-time http://127.0.0.1:46313/1274 -D log/3/out1274 > log/3/stdout1274 2> log/3/stderr1274 1274: 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 1274 === Start of file server.cmd Testnum 1274 === End of file server.cmd === Start of file valgrind1274 ==127708== ==127708== Process terminating with default action of signal 4 (SIGILL) ==127708== Illegal opcode at address 0x10B06D ==127708== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127708== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1274 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/5/valgrind1277 ../src/curl -q --output log/5/curl1277.out --include --trace-ascii log/5/trace1277 --trace-time http://127.0.0.1:33519/1277 --tr-encoding --compressed > log/5/stdout1277 2> log/5/stderr1277 1277: 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 1277 === Start of file server.cmd Testnum 1277 === End of file server.cmd === Start of file valgrind1277 ==127853== ==127853== Process terminating with default action of signal 4 (SIGILL) ==127853== Illegal opcode at address 0x10B06D ==127853== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127853== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1277 CMD (33792): ../libtool --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/valgrind1280 ../src/curl -q --output log/11/curl1280.out --include --trace-ascii log/11/trace1280 --trace-time http://127.0.0.1:35843/[a-d]/1280 > log/11/stdout1280 2> log/11/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/1/valgrind1282 ../src/curl -q --output log/1/curl1282.out --include --trace-ascii log/1/trace1282 --trace-time ftp://127.0.0.1:35701/1282 > log/1/stdout1282 2> log/1/stderr1282 CMD (33792): ../libtool --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/valgrind1283 ../src/curl -q --include --trace-ascii log/2/trace1283 --trace-time http://127.0.0.1:44205/[a-a][1-1][b-b:1][2-2:1]/1283 -o "log/2/outfile1283_#1#2#3#4.dump" > log/2/stdout1283 2> log/2/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/12/valgrind1281 ../src/curl -q --output log/12/curl1281.out --include --trace-ascii log/12/trace1281 --trace-time http://127.0.0.1:alpha/beta/1281 > log/12/stdout1281 2> log/12/stderr1281 CMD (33792): ../libtool --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/valgrind1284 ../src/curl -q --output log/9/curl1284.out --include --trace-ascii log/9/trace1284 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:40247/1284 > log/9/stdout1284 2> log/9/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/8/valgrind1285 ../src/curl -q --output log/8/curl1285.out --include --trace-ascii log/8/trace1285 --trace-time -H "Content-Length: 85" -u auser:apasswd --digest -T log/8/put1285 http://127.0.0.1:33791/1285 > log/8/stdout1285 2> log/8/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/3/valgrind1286 ../src/curl -q --output log/3/curl1286.out --include --trace-ascii log/3/trace1286 --trace-time -u auser:apasswd --location --digest http://127.0.0.1:46313/1286 > log/3/stdout1286 2> log/3/stderr1286 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/4/valgrind1278 ../src/curl -q --include --trace-ascii log/4/trace1278 --trace-time http://127.0.0.1:41947/1278 --no-progress-meter -o log/4/out1278 --no-remote-name -w '%{stderr}yes\n' > log/4/stdout1278 2> log/4/stderr1278 1278: stderr FAILED: --- log/4/check-expected 2024-05-23 11:17:09.681406937 +0200 +++ log/4/check-generated 2024-05-23 11:17:09.681406937 +0200 @@ -1 +0,0 @@ -yes[LF] == Contents of files in the log/4/ dir after test 1278 === Start of file check-expected yes[LF] === End of file check-expected === Start of file server.cmd Testnum 1278 === End of file server.cmd === Start of file valgrind1278 ==127865== ==127865== Process terminating with default action of signal 4 (SIGILL) ==127865== Illegal opcode at address 0x10B06D ==127865== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127865== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1278 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/11/valgrind1280 ../src/curl -q --output log/11/curl1280.out --include --trace-ascii log/11/trace1280 --trace-time http://127.0.0.1:35843/[a-d]/1280 > log/11/stdout1280 2> log/11/stderr1280 1280: 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 1280 === Start of file server.cmd Testnum 1280 === End of file server.cmd === Start of file valgrind1280 ==127952== ==127952== Process terminating with default action of signal 4 (SIGILL) ==127952== Illegal opcode at address 0x10B06D ==127952== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127952== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1280 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/1/valgrind1282 ../src/curl -q --output log/1/curl1282.out --include --trace-ascii log/1/trace1282 --trace-time ftp://127.0.0.1:35701/1282 > log/1/stdout1282 2> log/1/stderr1282 1282: 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 1282 === Start of file server.cmd REPLY PASS 633 XXXXXXXX\x00\x00XXXXXXXX Testnum 1282 === End of file server.cmd === Start of file valgrind1282 ==128003== ==128003== Process terminating with default action of signal 4 (SIGILL) ==128003== Illegal opcode at address 0x10B06D ==128003== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128003== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1282 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/2/valgrind1283 ../src/curl -q --include --trace-ascii log/2/trace1283 --trace-time http://127.0.0.1:44205/[a-a][1-1][b-b:1][2-2:1]/1283 -o "log/2/outfile1283_#1#2#3#4.dump" > log/2/stdout1283 2> log/2/stderr1283 1283: 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 1283 === Start of file server.cmd Testnum 1283 === End of file server.cmd === Start of file valgrind1283 ==128045== ==128045== Process terminating with default action of signal 4 (SIGILL) ==128045== Illegal opcode at address 0x10B06D ==128045== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128045== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1283 * 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/12/valgrind1281 ../src/curl -q --output log/12/curl1281.out --include --trace-ascii log/12/trace1281 --trace-time http://127.0.0.1:alpha/beta/1281 > log/12/stdout1281 2> log/12/stderr1281 curl returned 132, when expecting 3 1281: exit FAILED == Contents of files in the log/12/ dir after test 1281 === Start of file server.cmd Testnum 1281 === End of file server.cmd === Start of file valgrind1281 ==128002== ==128002== Process terminating with default action of signal 4 (SIGILL) ==128002== Illegal opcode at address 0x10B06D ==128002== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128002== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1281 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/9/valgrind1284 ../src/curl -q --output log/9/curl1284.out --include --trace-ascii log/9/trace1284 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:40247/1284 > log/9/stdout1284 2> log/9/stderr1284 1284: 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 1284 === Start of file server.cmd Testnum 1284 === End of file server.cmd === Start of file valgrind1284 ==128130== ==128130== Process terminating with default action of signal 4 (SIGILL) ==128130== Illegal opcode at address 0x10B06D ==128130== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128130== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1284 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/8/valgrind1285 ../src/curl -q --output log/8/curl1285.out --include --trace-ascii log/8/trace1285 --trace-time -H "Content-Length: 85" -u auser:apasswd --digest -T log/8/put1285 http://127.0.0.1:33791/1285 > log/8/stdout1285 2> log/8/stderr1285 1285: 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 1285 === 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 valgrind1285 ==128154== ==128154== Process terminating with default action of signal 4 (SIGILL) ==128154== Illegal opcode at address 0x10B06D ==128154== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128154== by 0x10B06D: 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/3/valgrind1286 ../src/curl -q --output log/3/curl1286.out --include --trace-ascii log/3/trace1286 --trace-time -u auser:apasswd --location --digest http://127.0.0.1:46313/1286 > log/3/stdout1286 2> log/3/stderr1286 1286: 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 1286 === Start of file server.cmd Testnum 1286 === End of file server.cmd === Start of file valgrind1286 ==128246== ==128246== Process terminating with default action of signal 4 (SIGILL) ==128246== Illegal opcode at 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/10/valgrind1265 ../src/curl -q --output log/10/curl1265.out --include --trace-ascii log/10/trace1265 --trace-time http://[::1]:42217/1265 > log/10/stdout1265 2> log/10/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/11/valgrind1289 ../src/curl -q --output log/11/curl1289.out --include --trace-ascii log/11/trace1289 --trace-time http://ur%20[0-60000000000000000000 > log/11/stdout1289 2> log/11/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/1/valgrind1290 ../src/curl -q --output log/1/curl1290.out --include --trace-ascii log/1/trace1290 --trace-time "http://127.0.0.1:39283/we/want/[]/page/1290" > log/1/stdout1290 2> log/1/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/9/valgrind1293 ../src/curl -q --output log/9/curl1293.out --include --trace-ascii log/9/trace1293 --trace-time http://0 http://127.0.0.1:40247/1293 -F= > log/9/stdout1293 2> log/9/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/8/valgrind1296 ../src/curl -q --output log/8/curl1296.out --include --trace-ascii log/8/trace1296 --trace-time http://user%0aname:password@127.0.0.1:33791/1296 > log/8/stdout1296 2> log/8/stderr1296 CMD (33792): ../libtool --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/valgrind1292 ../src/curl -q --output log/12/curl1292.out --include --trace-ascii log/12/trace1292 --trace-time -H "Host;" -H "Accept;" http://127.0.0.1:44175/1292 > log/12/stdout1292 2> log/12/stderr1292 CMD (33792): ../libtool --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-time -K log/2/cmd1291 --fail-early > log/2/stdout1291 2> log/2/stderr1291 ress 0x10B06D ==128246== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128246== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1286 startnew: perl -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: ../src/curl --max-time 13 --output log/10/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:42217/verifiedserver" 2>log/10/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 127401 port 42217 * pid http-ipv6 => 127401 127401 setenv http_proxy = http://127.0.0.1:36145 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/10/valgrind1265 ../src/curl -q --output log/10/curl1265.out --include --trace-ascii log/10/trace1265 --trace-time http://[::1]:42217/1265 > log/10/stdout1265 2> log/10/stderr1265 1265: 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 1265 === Start of file http_ipv6_server.log 11:17:08.126480 Running HTTP IPv6 version on port 42217 11:17:08.126561 Wrote pid 127401 to log/10/server/http_ipv6_server.pid 11:17:08.126586 Wrote port 42217 to log/10/server/http_ipv6_server.port 11:17:09.127048 ====> Client connect 11:17:09.127068 accept_connection 3 returned 4 11:17:09.127080 accept_connection 3 returned 0 11:17:09.127092 Read 88 bytes 11:17:09.127100 Process 88 bytes request 11:17:09.127117 Got request: GET /verifiedserver HTTP/1.1 11:17:09.127124 Are-we-friendly question received 11:17:09.127145 Wrote request (88 bytes) input to log/10/server.input 11:17:09.127166 Identifying ourselves as friends 11:17:09.127235 Response sent (57 bytes) and written to log/10/server.response 11:17:09.127245 special request received, no persistency 11:17:09.127252 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:42217... * Connected to ::1 (::1) port 42217 > GET /verifiedserver HTTP/1.1 > Host: [::1]:42217 > User-Agent: curl/8.8.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: 127401 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 1265 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 127401 === End of file server.response === Start of file valgrind1265 ==128316== ==128316== Process terminating with default action of signal 4 (SIGILL) ==128316== Illegal opcode at address 0x10B06D ==128316== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128316== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1265 test 1289...[globbing with overflow and bad syntxx] ../libtool --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/valgrind1289 ../src/curl -q --output log/11/curl1289.out --include --trace-ascii log/11/trace1289 --trace-time http://ur%20[0-60000000000000000000 > log/11/stdout1289 2> log/11/stderr1289 curl returned 132, when expecting 3 1289: exit FAILED == Contents of files in the log/11/ dir after test 1289 === Start of file server.cmd Testnum 1289 === End of file server.cmd === Start of file valgrind1289 ==128369== ==128369== Process terminating with default action of signal 4 (SIGILL) ==128369== Illegal opcode at address 0x10B06D ==128369== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128369== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1289 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/1/valgrind1290 ../src/curl -q --output log/1/curl1290.out --include --trace-ascii log/1/trace1290 --trace-time "http://127.0.0.1:39283/we/want/[]/page/1290" > log/1/stdout1290 2> log/1/stderr1290 1290: 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 1290 === Start of file server.cmd Testnum 1290 === End of file server.cmd === Start of file valgrind1290 ==128416== ==128416== Process terminating with default action of signal 4 (SIGILL) ==128416== Illegal opcode at address 0x10B06D ==128416== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128416== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1290 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/9/valgrind1293 ../src/curl -q --output log/9/curl1293.out --include --trace-ascii log/9/trace1293 --trace-time http://0 http://127.0.0.1:40247/1293 -F= > log/9/stdout1293 2> log/9/stderr1293 1293: 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 1293 === Start of file server.cmd Testnum 1293 === End of file server.cmd === Start of file valgrind1293 ==128443== ==128443== Process terminating with default action of signal 4 (SIGILL) ==128443== Illegal opcode at address 0x10B06D ==128443== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128443== by 0x10B06D: 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/8/valgrind1296 ../src/curl -q --output log/8/curl1296.out --include --trace-ascii log/8/trace1296 --trace-time http://user%0aname:password@127.0.0.1:33791/1296 > log/8/stdout1296 2> log/8/stderr1296 1296: 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 1296 === Start of file server.cmd Testnum 1296 === End of file server.cmd === Start of file valgrind1296 ==128540== ==128540== Process terminating with default action of signal 4 (SIGILL) ==128540== Illegal opcode at address 0x10B06D ==128540== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128540== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1296 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/12/valgrind1292 ../src/curl -q --output log/12/curl1292.out --include --trace-ascii log/12/trace1292 --trace-time -H "Host;" -H "Accept;" http://127.0.0.1:44175/1292 > log/12/stdout1292 2> log/12/stderr1292 1292: 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 1292 === Start of file server.cmd Testnum 1292 === End of file server.cmd === Start of file valgrind1292 ==128436== ==128436== Process terminating with default action of signal 4 (SIGILL) ==128436== Illegal opcode at address 0x10B06D ==128436== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128436== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1292 * 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-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=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/3/valgrind1297 ../src/curl -q --output log/3/curl1297.out --include --trace-ascii log/3/trace1297 --trace-time --proxytunnel --proxy 127.0.0.1:45097 http://127.0.0.1:46313/we/want/that/page/1297 > log/3/stdout1297 2> log/3/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/10/valgrind1298 ../src/curl -q --output log/10/curl1298.out --include --trace-ascii log/10/trace1298 --trace-time --request-target "XXX" "http://127.0.0.1:36145/" -H "Testno: 1298" > log/10/stdout1298 2> log/10/stderr1298 CMD (0): ../src/curl --max-time 13 --output log/5/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:41247/verifiedserver" 2>log/5/http2_verify.log CMD (0): ../src/curl --max-time 13 --output log/4/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:34455/verifiedserver" 2>log/4/http2_verify.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/11/valgrind1299 ../src/curl -q --output log/11/curl1299.out --include --trace-ascii log/11/trace1299 --trace-time --request-target '*' -X OPTIONS http://127.0.0.1:35843/ -H "Testno: 1299" > log/11/stdout1299 2> log/11/stderr1299 CMD (33792): ../libtool --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/valgrind1314 ../src/curl -q --output log/9/curl1314.out --include --trace-ascii log/9/trace1314 --trace-time http://firstplace.example.com/want/1314 -L -x http://127.0.0.1:40247 > log/9/stdout1314 2> log/9/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/8/valgrind1315 ../src/curl -q --output log/8/curl1315.out --include --trace-ascii log/8/trace1315 --trace-time http://127.0.0.1:33791/we/want/1315 -F name=value -F 'file=@log/8/test1315.txt,log/8/test1315.txt;type=magic/content,log/8/test1315.txt' > log/8/stdout1315 2> log/8/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/2/valgrind1318 ../src/curl -q --output log/2/curl1318.out --include --trace-ascii log/2/trace1318 --trace-time --resolve MiXeDcAsE.cOm:44205:127.0.0.1 http://MiXeDcAsE.cOm:44205/1318 http://mixedcase.com:44205/13180001 > log/2/stdout1318 2> log/2/stderr1318 og/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this 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 server.cmd Testnum 1291 === End of file server.cmd === Start of file upload-this XXXXXXXx === End of file upload-this === Start of file valgrind1291 ==128441== ==128441== Process terminating with default action of signal 4 (SIGILL) ==128441== Illegal opcode at address 0x10B06D ==128441== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128441== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1291 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/3/valgrind1297 ../src/curl -q --output log/3/curl1297.out --include --trace-ascii log/3/trace1297 --trace-time --proxytunnel --proxy 127.0.0.1:45097 http://127.0.0.1:46313/we/want/that/page/1297 > log/3/stdout1297 2> log/3/stderr1297 1297: 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 1297 === Start of file server.cmd Testnum 1297 === End of file server.cmd === Start of file valgrind1297 ==128661== ==128661== Process terminating with default action of signal 4 (SIGILL) ==128661== Illegal opcode at address 0x10B06D ==128661== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128661== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1297 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/10/valgrind1298 ../src/curl -q --output log/10/curl1298.out --include --trace-ascii log/10/trace1298 --trace-time --request-target "XXX" "http://127.0.0.1:36145/" -H "Testno: 1298" > log/10/stdout1298 2> log/10/stderr1298 1298: 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 1298 === Start of file server.cmd Testnum 1298 === End of file server.cmd === Start of file valgrind1298 ==128698== ==128698== Process terminating with default action of signal 4 (SIGILL) ==128698== Illegal opcode at address 0x10B06D ==128698== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128698== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1298 test 1299...[Send "OPTIONS *" 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/11/valgrind1299 ../src/curl -q --output log/11/curl1299.out --include --trace-ascii log/11/trace1299 --trace-time --request-target '*' -X OPTIONS http://127.0.0.1:35843/ -H "Testno: 1299" > log/11/stdout1299 2> log/11/stderr1299 1299: 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 1299 === Start of file server.cmd Testnum 1299 === End of file server.cmd === Start of file valgrind1299 ==128764== ==128764== Process terminating with default action of signal 4 (SIGILL) ==128764== Illegal opcode at address 0x10B06D ==128764== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128764== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1299 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/9/valgrind1314 ../src/curl -q --output log/9/curl1314.out --include --trace-ascii log/9/trace1314 --trace-time http://firstplace.example.com/want/1314 -L -x http://127.0.0.1:40247 > log/9/stdout1314 2> log/9/stderr1314 1314: 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 1314 === Start of file server.cmd Testnum 1314 === End of file server.cmd === Start of file valgrind1314 ==128855== ==128855== Process terminating with default action of signal 4 (SIGILL) ==128855== Illegal opcode at address 0x10B06D ==128855== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128855== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1314 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/8/valgrind1315 ../src/curl -q --output log/8/curl1315.out --include --trace-ascii log/8/trace1315 --trace-time http://127.0.0.1:33791/we/want/1315 -F name=value -F 'file=@log/8/test1315.txt,log/8/test1315.txt;type=magic/content,log/8/test1315.txt' > log/8/stdout1315 2> log/8/stderr1315 1315: 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 1315 === Start of file server.cmd Testnum 1315 === End of file server.cmd === Start of file test1315.txt dummy data === End of file test1315.txt === Start of file valgrind1315 ==128886== ==128886== Process terminating with default action of signal 4 (SIGILL) ==128886== Illegal opcode at address 0x10B06D ==128886== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128886== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1315 test 1318...[HTTP with --resolve and same host name using different cases] ../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/12/valgrind1317 ../src/curl -q --output log/12/curl1317.out --include --trace-ascii log/12/trace1317 --trace-time --resolve example.com:44175:127.0.0.1 http://example.com:44175/1317 > log/12/stdout1317 2> log/12/stderr1317 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/valgrind1301 ./libtest/lib1301 - > log/1/stdout1301 2> log/1/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/valgrind1319 ../src/curl -q --output log/3/curl1319.out --include --trace-ascii log/3/trace1319 --trace-time pop3://pop.1319:45905/1319 -p -x 127.0.0.1:45097 -u user:secret > log/3/stdout1319 2> log/3/stderr1319 CMD (33792): ../libtool --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-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:34455 http://127.0.0.1:41947/we/want/that/page/1288 > log/4/stdout1288 2> log/4/stderr1288 CMD (33792): ../libtool --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/valgrind1287 ../src/curl -q --output log/5/curl1287.out --include --trace-ascii log/5/trace1287 --trace-time -v --proxytunnel -x 127.0.0.1:41247 http://test.1287:33519/we/want/that/page/1287 > log/5/stdout1287 2> log/5/stderr1287 leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1318 ../src/curl -q --output log/2/curl1318.out --include --trace-ascii log/2/trace1318 --trace-time --resolve MiXeDcAsE.cOm:44205:127.0.0.1 http://MiXeDcAsE.cOm:44205/1318 http://mixedcase.com:44205/13180001 > log/2/stdout1318 2> log/2/stderr1318 1318: 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 1318 === Start of file server.cmd Testnum 1318 === End of file server.cmd === Start of file valgrind1318 ==128925== ==128925== Process terminating with default action of signal 4 (SIGILL) ==128925== Illegal opcode at address 0x10B06D ==128925== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128925== by 0x10B06D: 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/12/valgrind1317 ../src/curl -q --output log/12/curl1317.out --include --trace-ascii log/12/trace1317 --trace-time --resolve example.com:44175:127.0.0.1 http://example.com:44175/1317 > log/12/stdout1317 2> log/12/stderr1317 1317: 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 1317 === Start of file server.cmd Testnum 1317 === End of file server.cmd === Start of file valgrind1317 ==128889== ==128889== Process terminating with default action of signal 4 (SIGILL) ==128889== Illegal opcode at address 0x10B06D ==128889== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==128889== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1317 * 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/1/valgrind1301 ./libtest/lib1301 - > log/1/stdout1301 2> log/1/stderr1301 -------e-v- OK (1153 out of 1513, remaining: 00:27, took 0.568s, duration: 01:29) 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/3/valgrind1319 ../src/curl -q --output log/3/curl1319.out --include --trace-ascii log/3/trace1319 --trace-time pop3://pop.1319:45905/1319 -p -x 127.0.0.1:45097 -u user:secret > log/3/stdout1319 2> log/3/stderr1319 1319: 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 1319 === Start of file server.cmd Testnum 1319 === End of file server.cmd === Start of file valgrind1319 ==129049== ==129049== Process terminating with default action of signal 4 (SIGILL) ==129049== Illegal opcode at address 0x10B06D ==129049== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129049== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1319 CMD (33792): ../libtool --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/valgrind1321 ../src/curl -q --output log/11/curl1321.out --include --trace-ascii log/11/trace1321 --trace-time 'imap://imap.1321:33793/1321/;MAILINDEX=1' -u user:secret -p -x 127.0.0.1:42527 > log/11/stdout1321 2> log/11/stderr1321 startnew: perl -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: ../src/curl --max-time 13 --output log/4/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:34455/verifiedserver" 2>log/4/http2_verify.log RUN: HTTP2 server is on PID 128366 port 34455 * pid http-proxy => 128366 128366 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-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:34455 http://127.0.0.1:41947/we/want/that/page/1288 > log/4/stdout1288 2> log/4/stderr1288 1288: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:11.274772998 +0200 +++ log/4/check-generated 2024-05-23 11:17:11.274772998 +0200 @@ -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 http2_server.log 11:17:09.220916 Run as proxy, CONNECT to host 127.0.0.1 11:17:09.221000 Running HTTP IPv4 version on port 34455 11:17:09.221032 Wrote pid 128366 to log/4/server/http2_server.pid 11:17:09.221055 Wrote port 34455 to log/4/server/http2_server.port 11:17:10.224971 ====> Client connect 11:17:10.224987 accept_connection 3 returned 4 11:17:10.224999 accept_connection 3 returned 0 11:17:10.225009 Read 92 bytes 11:17:10.225017 Process 92 bytes request 11:17:10.225032 Got request: GET /verifiedserver HTTP/1.1 11:17:10.225039 Are-we-friendly question received 11:17:10.225058 Wrote request (92 bytes) input to log/4/proxy.input 11:17:10.225075 Identifying ourselves as friends 11:17:10.225128 Response sent (57 bytes) and written to log/4/proxy.response 11:17:10.225135 special request received, no persistency 11:17:10.225140 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:34455... * Connected to 127.0.0.1 (127.0.0.1) port 34455 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34455 > User-Agent: curl/8.8.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: 128366 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 128366 === End of file proxy.response === Start of file server.cmd Testnum 1288 === End of file server.cmd === Start of file valgrind1288 ==129140== ==129140== Process terminating with default action of signal 4 (SIGILL) ==129140== Illegal opcode at address 0x10B06D ==129140== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129140== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1288 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/5/server/http2_server.pid" --logfile "log/5/http2_server.log" --logdir "log/5" --portfile log/5/server/http2_server.port --config log/5/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/5/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:41247/verifiedserver" 2>log/5/http2_verify.log RUN: HTTP2 server is on PID 128363 port 41247 * pid http-proxy => 128363 128363 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/5/valgrind1287 ../src/curl -q --output log/5/curl1287.out --include --trace-ascii log/5/trace1287 --trace-time -v --proxytunnel -x 127.0.0.1:41247 http://test.1287:33519/we/want/that/page/1287 > log/5/stdout1287 2> log/5/stderr1287 1287: 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 1287 === Start of file http2_server.log 11:17:09.216159 Run as proxy, CONNECT to host 127.0.0.1 11:17:09.216280 Running HTTP IPv4 version on port 41247 11:17:09.216315 Wrote pid 128363 to log/5/server/http2_server.pid 11:17:09.216345 Wrote port 41247 to log/5/server/http2_server.port 11:17:10.220181 ====> Client connect 11:17:10.220198 accept_connection 3 returned 4 11:17:10.220211 accept_connection 3 returned 0 11:17:10.220224 Read 92 bytes 11:17:10.220232 Process 92 bytes request 11:17:10.220249 Got request: GET /verifiedserver HTTP/1.1 11:17:10.220256 Are-we-friendly question received 11:17:10.220276 Wrote request (92 bytes) input to log/5/proxy.input 11:17:10.220294 Identifying ourselves as friends 11:17:10.220355 Response sent (57 bytes) and written to log/5/proxy.response 11:17:10.220365 special request received, no persistency 11:17:10.220372 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:41247... * Connected to 127.0.0.1 (127.0.0.1) port 41247 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41247 > User-Agent: curl/8.8.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: 128363 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 128363 === End of file proxy.response === Start of file server.cmd Testnum 1287 === End of file server.cmd === Start of file valgrind1287 ==129141== ==129141== Process terminating with default action of signal 4 (SIGILL) ==129141== Illegal opcode at address 0x10B06D ==129141== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129141== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1287 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/11/valgrind1321 ../src/curl -q --output log/11/curl1321.out --include --trace-ascii log/11/trace1321 --trace-time 'imap://imap.1321:33793/1321/;MAILINDEX=1' -u user:secret -p -x 127.0.0.1:42527 > log/11/stdout1321 2> log/11/stderr1321 1321: protocol FAILED! There was no content at all in the file log/11/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/8/valgrind1324 ../src/curl -q --output log/8/curl1324.out --include --trace-ascii log/8/trace1324 --trace-time --resolve example.com:34451:[::1] http://example.com:34451/1324 > log/8/stdout1324 2> log/8/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/9/valgrind1322 ../src/curl -q --output log/9/curl1322.out --include --trace-ascii log/9/trace1322 --trace-time --ipv4 --resolve example.com.:40247:127.0.0.1 http://example.com.:40247/1322 > log/9/stdout1322 2> log/9/stderr1322 CMD (33792): ../libtool --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/valgrind1326 ../src/curl -q --output log/12/curl1326.out --include --trace-ascii log/12/trace1326 --trace-time telnet://127.0.0.1:44175 --upload-file - log/12/stdout1326 2> log/12/stderr1326 CMD (33792): ../libtool --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/valgrind1327 ../src/curl -q --include --trace-ascii log/1/trace1327 --trace-time telnet://127.0.0.1:39283 -T log/1/1327.txt log/1/stdout1327 2> log/1/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/2/valgrind1325 ../src/curl -q --output log/2/curl1325.out --include --trace-ascii log/2/trace1325 --trace-time http://127.0.0.1:44205/we/1325 -L -d "moo" > log/2/stdout1325 2> log/2/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/3/valgrind1328 ../src/curl -q --output log/3/curl1328.out --include --trace-ascii log/3/trace1328 --trace-time -f 'http://127.0.0.1:46313/[13280000-13280001]' -o log/3/#1 > log/3/stdout1328 2> log/3/stderr1328 CMD (0): ../src/curl --max-time 13 --output log/10/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:36757/verifiedserver" 2>log/10/http2_verify.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/4/valgrind1329 ../src/curl -q --output log/4/curl1329.out --include --trace-ascii log/4/trace1329 --trace-time http://127.0.0.1:41947/we/want/that/page/1329 -x "/server" > log/4/stdout1329 2> log/4/stderr1329 CMD (33792): ../libtool --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/valgrind1331 ../src/curl -q --output log/5/curl1331.out --include --trace-ascii log/5/trace1331 --trace-time -U myname:mypassword -x 127.0.0.1:33519 http://z.x.com/1331 --proxy-anyauth -c log/5/dump1331 > log/5/stdout1331 2> log/5/stderr1331 urned: 132 == Contents of files in the log/11/ dir after test 1321 === Start of file server.cmd Testnum 1321 === End of file server.cmd === Start of file valgrind1321 ==129238== ==129238== Process terminating with default action of signal 4 (SIGILL) ==129238== Illegal opcode at address 0x10B06D ==129238== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129238== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1321 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/8/valgrind1324 ../src/curl -q --output log/8/curl1324.out --include --trace-ascii log/8/trace1324 --trace-time --resolve example.com:34451:[::1] http://example.com:34451/1324 > log/8/stdout1324 2> log/8/stderr1324 1324: 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 1324 === Start of file server.cmd Testnum 1324 === End of file server.cmd === Start of file valgrind1324 ==129324== ==129324== Process terminating with default action of signal 4 (SIGILL) ==129324== Illegal opcode at address 0x10B06D ==129324== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129324== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1324 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/9/valgrind1322 ../src/curl -q --output log/9/curl1322.out --include --trace-ascii log/9/trace1322 --trace-time --ipv4 --resolve example.com.:40247:127.0.0.1 http://example.com.:40247/1322 > log/9/stdout1322 2> log/9/stderr1322 1322: 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 1322 === Start of file server.cmd Testnum 1322 === End of file server.cmd === Start of file valgrind1322 ==129256== ==129256== Process terminating with default action of signal 4 (SIGILL) ==129256== Illegal opcode at address 0x10B06D ==129256== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129256== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1322 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/12/valgrind1326 ../src/curl -q --output log/12/curl1326.out --include --trace-ascii log/12/trace1326 --trace-time telnet://127.0.0.1:44175 --upload-file - log/12/stdout1326 2> log/12/stderr1326 1326: 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 1326 === Start of file server.cmd Testnum 1326 === End of file server.cmd === Start of file stdin-for-1326 GET /we/want/1326 HTTP/1.0 === End of file stdin-for-1326 === Start of file valgrind1326 ==129360== ==129360== Process terminating with default action of signal 4 (SIGILL) ==129360== Illegal opcode at address 0x10B06D ==129360== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129360== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1326 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/1/valgrind1327 ../src/curl -q --include --trace-ascii log/1/trace1327 --trace-time telnet://127.0.0.1:39283 -T log/1/1327.txt log/1/stdout1327 2> log/1/stderr1327 1327: 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 1327 === Start of file 1327.txt GET /we/want/1327 HTTP/1.0 === End of file 1327.txt === 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 ==129363== ==129363== Process terminating with default action of signal 4 (SIGILL) ==129363== Illegal opcode at address 0x10B06D ==129363== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129363== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1327 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/2/valgrind1325 ../src/curl -q --output log/2/curl1325.out --include --trace-ascii log/2/trace1325 --trace-time http://127.0.0.1:44205/we/1325 -L -d "moo" > log/2/stdout1325 2> log/2/stderr1325 1325: 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 1325 === Start of file server.cmd Testnum 1325 === End of file server.cmd === Start of file valgrind1325 ==129366== ==129366== Process terminating with default action of signal 4 (SIGILL) ==129366== Illegal opcode at address 0x10B06D ==129366== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129366== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1325 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/3/valgrind1328 ../src/curl -q --output log/3/curl1328.out --include --trace-ascii log/3/trace1328 --trace-time -f 'http://127.0.0.1:46313/[13280000-13280001]' -o log/3/#1 > log/3/stdout1328 2> log/3/stderr1328 1328: 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 1328 === Start of file server.cmd Testnum 1328 === End of file server.cmd === Start of file valgrind1328 ==129522== ==129522== Process terminating with default action of signal 4 (SIGILL) ==129522== Illegal opcode at address 0x10B06D ==129522== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129522== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1328 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/4/valgrind1329 ../src/curl -q --output log/4/curl1329.out --include --trace-ascii log/4/trace1329 --trace-time http://127.0.0.1:41947/we/want/that/page/1329 -x "/server" > log/4/stdout1329 2> log/4/stderr1329 curl returned 132, when expecting 5 1329: exit FAILED == Contents of files in the log/4/ dir after test 1329 === Start of file server.cmd Testnum 1329 === End of file server.cmd === Start of file valgrind1329 ==129586== ==129586== Process terminating with default action of signal 4 (SIGILL) ==129586== Illegal opcode at address 0x10B06D ==129586== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129586== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1329 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/5/valgrind1331 ../src/curl -q --output log/5/curl1331.out --include --trace-ascii log/5/trace1331 --trace-time -U myname:mypassword -x 127.0.0.1:33519 http://z.x.com/1331 --proxy-anyauth -c log/5/dump1331 > log/5/stdout1331 2> log/5/stderr1331 1331: protocol FAILED! There was no content CMD (33792): ../libtool --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/valgrind1364 ../src/curl -q --trace-ascii log/9/trace1364 --trace-time http://127.0.0.1:40247/1364 -o log/9/outfile1364 -D log/9/heads1364 > log/9/stdout1364 2> log/9/stderr1364 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/9/1364 CMD (33792): ../libtool --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/valgrind1332 ../src/curl -q --output log/11/curl1332.out --include --trace-ascii log/11/trace1332 --trace-time http://127.0.0.1:35843/blah/1332 -L -d "moo" --post303 > log/11/stdout1332 2> log/11/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/8/valgrind1333 ../src/curl -q --output log/8/curl1333.out --include --trace-ascii log/8/trace1333 --trace-time -d "" --header "Transfer-Encoding: chunked" http://127.0.0.1:33791/1333 > log/8/stdout1333 2> log/8/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/2/valgrind1367 ../src/curl -q --trace-ascii log/2/trace1367 --trace-time http://127.0.0.1:44205/1367 -o log/2/outfile1367 -D - > log/2/stdout1367 2> log/2/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/1/valgrind1366 ../src/curl -q --trace-ascii log/1/trace1366 --trace-time http://127.0.0.1:39283/1366 -o log/1/outfile1366 -D log/1/heads1366 > log/1/stdout1366 2> log/1/stderr1366 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/2/1367 log/2/name1367 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/1/1366 log/1/name1366 CMD (33792): ../libtool --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/valgrind1365 ../src/curl -q --trace-ascii log/12/trace1365 --trace-time http://127.0.0.1:44175/1365 -o log/12/outfile1365 -D - > log/12/stdout1365 2> log/12/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/3/valgrind1368 ../src/curl -q --trace-ascii log/3/trace1368 --trace-time http://127.0.0.1:46313/1368 -J -o log/3/outfile1368 -D log/3/heads1368 > log/3/stdout1368 2> log/3/stderr1368 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/12/1365 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/3/1368 CMD (33792): ../libtool --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/valgrind1320 ../src/curl -q --output log/10/curl1320.out --include --trace-ascii log/10/trace1320 --trace-time smtp://smtp.1320:43001/1320 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x 127.0.0.1:36757 log/10/stdout1320 2> log/10/stderr1320 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 1331 === Start of file server.cmd Testnum 1331 === End of file server.cmd === Start of file valgrind1331 ==129592== ==129592== Process terminating with default action of signal 4 (SIGILL) ==129592== Illegal opcode at address 0x10B06D ==129592== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129592== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1331 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/9/valgrind1364 ../src/curl -q --trace-ascii log/9/trace1364 --trace-time http://127.0.0.1:40247/1364 -o log/9/outfile1364 -D log/9/heads1364 > log/9/stdout1364 2> log/9/stderr1364 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/9/1364 1364: 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 1364 === Start of file server.cmd Testnum 1364 === End of file server.cmd === Start of file valgrind1364 ==129713== ==129713== Process terminating with default action of signal 4 (SIGILL) ==129713== Illegal opcode at address 0x10B06D ==129713== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129713== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1364 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/11/valgrind1332 ../src/curl -q --output log/11/curl1332.out --include --trace-ascii log/11/trace1332 --trace-time http://127.0.0.1:35843/blah/1332 -L -d "moo" --post303 > log/11/stdout1332 2> log/11/stderr1332 1332: 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 1332 === Start of file server.cmd Testnum 1332 === End of file server.cmd === Start of file valgrind1332 ==129686== ==129686== Process terminating with default action of signal 4 (SIGILL) ==129686== Illegal opcode at address 0x10B06D ==129686== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129686== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1332 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/8/valgrind1333 ../src/curl -q --output log/8/curl1333.out --include --trace-ascii log/8/trace1333 --trace-time -d "" --header "Transfer-Encoding: chunked" http://127.0.0.1:33791/1333 > log/8/stdout1333 2> log/8/stderr1333 1333: 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 1333 === Start of file server.cmd Testnum 1333 === End of file server.cmd === Start of file valgrind1333 ==129690== ==129690== Process terminating with default action of signal 4 (SIGILL) ==129690== Illegal opcode at address 0x10B06D ==129690== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129690== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1333 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/2/valgrind1367 ../src/curl -q --trace-ascii log/2/trace1367 --trace-time http://127.0.0.1:44205/1367 -o log/2/outfile1367 -D - > log/2/stdout1367 2> log/2/stderr1367 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/2/1367 log/2/name1367 1367: 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 1367 === Start of file server.cmd Testnum 1367 === End of file server.cmd === Start of file valgrind1367 ==129907== ==129907== Process terminating with default action of signal 4 (SIGILL) ==129907== Illegal opcode at address 0x10B06D ==129907== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129907== by 0x10B06D: 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/1/valgrind1366 ../src/curl -q --trace-ascii log/1/trace1366 --trace-time http://127.0.0.1:39283/1366 -o log/1/outfile1366 -D log/1/heads1366 > log/1/stdout1366 2> log/1/stderr1366 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/1/1366 log/1/name1366 1366: 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 1366 === Start of file server.cmd Testnum 1366 === End of file server.cmd === Start of file valgrind1366 ==129831== ==129831== Process terminating with default action of signal 4 (SIGILL) ==129831== Illegal opcode at address 0x10B06D ==129831== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129831== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1366 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/3/valgrind1368 ../src/curl -q --trace-ascii log/3/trace1368 --trace-time http://127.0.0.1:46313/1368 -J -o log/3/outfile1368 -D log/3/heads1368 > log/3/stdout1368 2> log/3/stderr1368 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/3/1368 1368: 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 1368 === Start of file server.cmd Testnum 1368 === End of file server.cmd === Start of file valgrind1368 ==129961== ==129961== Process terminating with default action of signal 4 (SIGILL) ==129961== Illegal opcode at address 0x10B06D ==129961== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129961== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1368 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/12/valgrind1365 ../src/curl -q --trace-ascii log/12/trace1365 --trace-time http://127.0.0.1:44175/1365 -o log/12/outfile1365 -D - > log/12/stdout1365 2> log/12/stderr1365 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/12/1365 1365: 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 1365 === Start of file server.cmd Testnum 1365 === End of file server.cmd === Start of file valgrind1365 ==129727== ==129727== Process terminating with default action of signal 4 (SIGILL) ==129727== Illegal opcode at address 0x10B06D ==129727== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==129727== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1365 startnew: perl -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/10CMD (33792): ../libtool --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/valgrind1369 ../src/curl -q --trace-ascii log/4/trace1369 --trace-time http://127.0.0.1:41947/1369 -J -o log/4/outfile1369 -D - > log/4/stdout1369 2> log/4/stderr1369 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/4/1369 CMD (33792): ../libtool --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/valgrind1370 ../src/curl -q --trace-ascii log/5/trace1370 --trace-time http://127.0.0.1:33519/1370 -J -o log/5/outfile1370 -D log/5/heads1370 > log/5/stdout1370 2> log/5/stderr1370 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/5/1370 log/5/name1370 CMD (33792): ../libtool --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/valgrind1375 ../src/curl -q --trace-ascii log/1/trace1375 --trace-time http://127.0.0.1:39283/1375 -i -o log/1/outfile1375 -D - > log/1/stdout1375 2> log/1/stderr1375 CMD (33792): ../libtool --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/valgrind1371 ../src/curl -q --trace-ascii log/9/trace1371 --trace-time http://127.0.0.1:40247/1371 -J -o log/9/outfile1371 -D - > log/9/stdout1371 2> log/9/stderr1371 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/1/1375 log/1/name1375 CMD (33792): ../libtool --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/valgrind1373 ../src/curl -q --trace-ascii log/8/trace1373 --trace-time http://127.0.0.1:33791/1373 -i -o log/8/outfile1373 -D - > log/8/stdout1373 2> log/8/stderr1373 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/9/1371 log/9/name1371 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/8/1373 /server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/10/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:36757/verifiedserver" 2>log/10/http2_verify.log RUN: HTTP2 server is on PID 129106 port 36757 * pid http-proxy => 129106 129106 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/10/valgrind1320 ../src/curl -q --output log/10/curl1320.out --include --trace-ascii log/10/trace1320 --trace-time smtp://smtp.1320:43001/1320 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x 127.0.0.1:36757 log/10/stdout1320 2> log/10/stderr1320 1320: 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 1320 === Start of file http2_server.log 11:17:10.133634 Run as proxy, CONNECT to host 127.0.0.1 11:17:10.133753 Running HTTP IPv4 version on port 36757 11:17:10.133786 Wrote pid 129106 to log/10/server/http2_server.pid 11:17:10.133809 Wrote port 36757 to log/10/server/http2_server.port 11:17:11.137572 ====> Client connect 11:17:11.137591 accept_connection 3 returned 4 11:17:11.137603 accept_connection 3 returned 0 11:17:11.137614 Read 92 bytes 11:17:11.137622 Process 92 bytes request 11:17:11.137639 Got request: GET /verifiedserver HTTP/1.1 11:17:11.137646 Are-we-friendly question received 11:17:11.137666 Wrote request (92 bytes) input to log/10/proxy.input 11:17:11.137685 Identifying ourselves as friends 11:17:11.137745 Response sent (57 bytes) and written to log/10/proxy.response 11:17:11.137754 special request received, no persistency 11:17:11.137761 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:36757... * Connected to 127.0.0.1 (127.0.0.1) port 36757 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36757 > User-Agent: curl/8.8.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: 129106 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 129106 === End of file proxy.response === Start of file server.cmd Testnum 1320 === End of file server.cmd === Start of file stdin-for-1320 From: different To: another body === End of file stdin-for-1320 === Start of file valgrind1320 ==130041== ==130041== Process terminating with default action of signal 4 (SIGILL) ==130041== Illegal opcode at address 0x10B06D ==130041== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130041== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1320 test 1369...[HTTP GET -o fname -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/4/valgrind1369 ../src/curl -q --trace-ascii log/4/trace1369 --trace-time http://127.0.0.1:41947/1369 -J -o log/4/outfile1369 -D - > log/4/stdout1369 2> log/4/stderr1369 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/4/1369 1369: 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 1369 === Start of file server.cmd Testnum 1369 === End of file server.cmd === Start of file valgrind1369 ==130094== ==130094== Process terminating with default action of signal 4 (SIGILL) ==130094== Illegal opcode at address 0x10B06D ==130094== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130094== by 0x10B06D: 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/5/valgrind1370 ../src/curl -q --trace-ascii log/5/trace1370 --trace-time http://127.0.0.1:33519/1370 -J -o log/5/outfile1370 -D log/5/heads1370 > log/5/stdout1370 2> log/5/stderr1370 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/5/1370 log/5/name1370 1370: 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 1370 === Start of file server.cmd Testnum 1370 === End of file server.cmd === Start of file valgrind1370 ==130099== ==130099== Process terminating with default action of signal 4 (SIGILL) ==130099== Illegal opcode at address 0x10B06D ==130099== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130099== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1370 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/1/valgrind1375 ../src/curl -q --trace-ascii log/1/trace1375 --trace-time http://127.0.0.1:39283/1375 -i -o log/1/outfile1375 -D - > log/1/stdout1375 2> log/1/stderr1375 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/1/1375 log/1/name1375 1375: 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 1375 === Start of file server.cmd Testnum 1375 === End of file server.cmd === Start of file valgrind1375 ==130238== ==130238== Process terminating with default action of signal 4 (SIGILL) ==130238== Illegal opcode at address 0x10B06D ==130238== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130238== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1375 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/9/valgrind1371 ../src/curl -q --trace-ascii log/9/trace1371 --trace-time http://127.0.0.1:40247/1371 -J -o log/9/outfile1371 -D - > log/9/stdout1371 2> log/9/stderr1371 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/9/1371 log/9/name1371 1371: 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 1371 === Start of file server.cmd Testnum 1371 === End of file server.cmd === Start of file valgrind1371 ==130196== ==130196== Process terminating with default action of signal 4 (SIGILL) ==130196== Illegal opcode at address 0x10B06D ==130196== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130196== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1371 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/8/valgrind1373 ../src/curl -q --trace-ascii log/8/trace1373 --trace-time http://127.0.0.1:33791/1373 -i -o log/8/outfile1373 -D - > log/8/stdout1373 2> log/8/stderr1373 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/8/1373 1373: 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 1373 === Start of file server.cmd Testnum 1373 === End of file server.cmd === Start of file valgrind1373 ==130198== ==130198== Process terminating with default action of signal 4 (CMD (33792): ../libtool --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/valgrind1376 ../src/curl -q --trace-ascii log/3/trace1376 --trace-time http://127.0.0.1:46313/1376 -i -o log/3/outfile1376 > log/3/stdout1376 2> log/3/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/12/valgrind1377 ../src/curl -q --trace-ascii log/12/trace1377 --trace-time http://127.0.0.1:44175/1377 -i -o log/12/outfile1377 > log/12/stdout1377 2> log/12/stderr1377 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/3/1376 CMD (33792): ../libtool --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/valgrind1372 ../src/curl -q --trace-ascii log/11/trace1372 --trace-time http://127.0.0.1:35843/1372 -i -o log/11/outfile1372 -D log/11/heads1372 > log/11/stdout1372 2> log/11/stderr1372 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/12/1377 log/12/name1377 CMD (33792): ../libtool --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/valgrind1374 ../src/curl -q --trace-ascii log/2/trace1374 --trace-time http://127.0.0.1:44205/1374 -i -o log/2/outfile1374 -D log/2/heads1374 > log/2/stdout1374 2> log/2/stderr1374 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/11/1372 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/2/1374 log/2/name1374 CMD (33792): ../libtool --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/valgrind1378 ../src/curl -q --trace-ascii log/10/trace1378 --trace-time ftp://127.0.0.1:33661/path/file1378 -o log/10/download1378 > log/10/stdout1378 2> log/10/stderr1378 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/10/file1378 CMD (33792): ../libtool --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/valgrind1379 ../src/curl -q --trace-ascii log/4/trace1379 --trace-time ftp://127.0.0.1:36137/path/file1379 -o log/4/download1379 -D log/4/heads1379 > log/4/stdout1379 2> log/4/stderr1379 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/4/file1379 CMD (33792): ../libtool --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/valgrind1380 ../src/curl -q --trace-ascii log/5/trace1380 --trace-time ftp://127.0.0.1:35155/path/file1380 -o log/5/download1380 -D - > log/5/stdout1380 2> log/5/stderr1380 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/5/file1380 CMD (33792): ../libtool --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/valgrind1386 ../src/curl -q --trace-ascii log/11/trace1386 --trace-time ftp://127.0.0.1:33323/path/file1386 -o log/11/download1386 > log/11/stdout1386 2> log/11/stderr1386 CMD (33792): ../libtool --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/valgrind1387 ../src/curl -q --trace-ascii log/2/trace1387 --trace-time ftp://127.0.0.1:42239/path/file1387 -o log/2/download1387 -D log/2/heads1387 > log/2/stdout1387 2> log/2/stderr1387 CMD (33792): ../libtool --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/valgrind1382 ../src/curl -q --trace-ascii log/9/trace1382 --trace-time ftp://127.0.0.1:39811/path/file1382 -o log/9/download1382 -J -D - > log/9/stdout1382 2> log/9/stderr1382 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/2/file1387 log/2/name1387 SIGILL) ==130198== Illegal opcode at address 0x10B06D ==130198== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130198== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1373 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/3/valgrind1376 ../src/curl -q --trace-ascii log/3/trace1376 --trace-time http://127.0.0.1:46313/1376 -i -o log/3/outfile1376 > log/3/stdout1376 2> log/3/stderr1376 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/3/1376 1376: 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 1376 === Start of file server.cmd Testnum 1376 === End of file server.cmd === Start of file valgrind1376 ==130278== ==130278== Process terminating with default action of signal 4 (SIGILL) ==130278== Illegal opcode at address 0x10B06D ==130278== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130278== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1376 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/12/valgrind1377 ../src/curl -q --trace-ascii log/12/trace1377 --trace-time http://127.0.0.1:44175/1377 -i -o log/12/outfile1377 > log/12/stdout1377 2> log/12/stderr1377 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/12/1377 log/12/name1377 1377: 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 1377 === Start of file server.cmd Testnum 1377 === End of file server.cmd === Start of file valgrind1377 ==130301== ==130301== Process terminating with default action of signal 4 (SIGILL) ==130301== Illegal opcode at address 0x10B06D ==130301== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130301== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1377 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/11/valgrind1372 ../src/curl -q --trace-ascii log/11/trace1372 --trace-time http://127.0.0.1:35843/1372 -i -o log/11/outfile1372 -D log/11/heads1372 > log/11/stdout1372 2> log/11/stderr1372 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/11/1372 1372: 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 1372 === Start of file server.cmd Testnum 1372 === End of file server.cmd === Start of file valgrind1372 ==130197== ==130197== Process terminating with default action of signal 4 (SIGILL) ==130197== Illegal opcode at address 0x10B06D ==130197== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130197== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1372 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/2/valgrind1374 ../src/curl -q --trace-ascii log/2/trace1374 --trace-time http://127.0.0.1:44205/1374 -i -o log/2/outfile1374 -D log/2/heads1374 > log/2/stdout1374 2> log/2/stderr1374 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/2/1374 log/2/name1374 1374: 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 1374 === Start of file server.cmd Testnum 1374 === End of file server.cmd === Start of file valgrind1374 ==130233== ==130233== Process terminating with default action of signal 4 (SIGILL) ==130233== Illegal opcode at address 0x10B06D ==130233== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130233== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1374 test 1378...[FTP DL, file without 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/10/valgrind1378 ../src/curl -q --trace-ascii log/10/trace1378 --trace-time ftp://127.0.0.1:33661/path/file1378 -o log/10/download1378 > log/10/stdout1378 2> log/10/stderr1378 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/10/file1378 1378: 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 1378 === Start of file server.cmd Testnum 1378 === End of file server.cmd === Start of file valgrind1378 ==130531== ==130531== Process terminating with default action of signal 4 (SIGILL) ==130531== Illegal opcode at address 0x10B06D ==130531== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130531== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1378 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/4/valgrind1379 ../src/curl -q --trace-ascii log/4/trace1379 --trace-time ftp://127.0.0.1:36137/path/file1379 -o log/4/download1379 -D log/4/heads1379 > log/4/stdout1379 2> log/4/stderr1379 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/4/file1379 1379: 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 1379 === Start of file server.cmd Testnum 1379 === End of file server.cmd === Start of file valgrind1379 ==130584== ==130584== Process terminating with default action of signal 4 (SIGILL) ==130584== Illegal opcode at address 0x10B06D ==130584== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130584== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1379 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/5/valgrind1380 ../src/curl -q --trace-ascii log/5/trace1380 --trace-time ftp://127.0.0.1:35155/path/file1380 -o log/5/download1380 -D - > log/5/stdout1380 2> log/5/stderr1380 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/5/file1380 1380: 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 1380 === Start of file server.cmd Testnum 1380 === End of file server.cmd === Start of file valgrind1380 ==130600== ==130600== Process terminating with default action of signal 4 (SIGILL) ==130600== Illegal opcode at address 0x10B06D ==130600== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130600== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1380 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 --log-file=log/2/valgrind1387 ../src/curl -q --trace-ascii log/2/trace1387 --trace-time ftp://127.0.0.1:42239/path/file1387 -o log/2/download1387 -D log/2/heads1387 > log/2/stdout1387 2> log/2/stderr1387 postcheck perl /startdirCMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/9/file1382 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/11/file1386 log/11/name1386 CMD (33792): ../libtool --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/valgrind1384 ../src/curl -q --trace-ascii log/3/trace1384 --trace-time ftp://127.0.0.1:45493/path/file1384 -o log/3/download1384 -i -D - > log/3/stdout1384 2> log/3/stderr1384 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/3/file1384 CMD (33792): ../libtool --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/valgrind1381 ../src/curl -q --trace-ascii log/1/trace1381 --trace-time ftp://127.0.0.1:35701/path/file1381 -o log/1/download1381 -J -D log/1/heads1381 > log/1/stdout1381 2> log/1/stderr1381 CMD (33792): ../libtool --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/valgrind1385 ../src/curl -q --trace-ascii log/12/trace1385 --trace-time ftp://127.0.0.1:41005/path/file1385 -o log/12/download1385 -i > log/12/stdout1385 2> log/12/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/8/valgrind1383 ../src/curl -q --trace-ascii log/8/trace1383 --trace-time ftp://127.0.0.1:43509/path/file1383 -o log/8/download1383 -i -D log/8/heads1383 > log/8/stdout1383 2> log/8/stderr1383 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/12/file1385 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/1/file1381 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/8/file1383 CMD (33792): ../libtool --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/valgrind1388 ../src/curl -q --trace-ascii log/10/trace1388 --trace-time ftp://127.0.0.1:33661/path/file1388 -o log/10/download1388 -D - > log/10/stdout1388 2> log/10/stderr1388 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/10/file1388 log/10/name1388 /src/curl/tests/libtest/notexists.pl log/2/file1387 log/2/name1387 1387: 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 1387 === Start of file server.cmd Testnum 1387 === End of file server.cmd === Start of file valgrind1387 ==130813== ==130813== Process terminating with default action of signal 4 (SIGILL) ==130813== Illegal opcode at address 0x10B06D ==130813== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130813== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1387 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/9/valgrind1382 ../src/curl -q --trace-ascii log/9/trace1382 --trace-time ftp://127.0.0.1:39811/path/file1382 -o log/9/download1382 -J -D - > log/9/stdout1382 2> log/9/stderr1382 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/9/file1382 1382: 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 1382 === Start of file server.cmd Testnum 1382 === End of file server.cmd === Start of file valgrind1382 ==130691== ==130691== Process terminating with default action of signal 4 (SIGILL) ==130691== Illegal opcode at address 0x10B06D ==130691== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130691== by 0x10B06D: 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/11/valgrind1386 ../src/curl -q --trace-ascii log/11/trace1386 --trace-time ftp://127.0.0.1:33323/path/file1386 -o log/11/download1386 > log/11/stdout1386 2> log/11/stderr1386 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/11/file1386 log/11/name1386 1386: 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 1386 === Start of file server.cmd Testnum 1386 === End of file server.cmd === Start of file valgrind1386 ==130762== ==130762== Process terminating with default action of signal 4 (SIGILL) ==130762== Illegal opcode at address 0x10B06D ==130762== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130762== by 0x10B06D: 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/3/valgrind1384 ../src/curl -q --trace-ascii log/3/trace1384 --trace-time ftp://127.0.0.1:45493/path/file1384 -o log/3/download1384 -i -D - > log/3/stdout1384 2> log/3/stderr1384 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/3/file1384 1384: 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 1384 === Start of file server.cmd Testnum 1384 === End of file server.cmd === Start of file valgrind1384 ==130737== ==130737== Process terminating with default action of signal 4 (SIGILL) ==130737== Illegal opcode at address 0x10B06D ==130737== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130737== by 0x10B06D: 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/12/valgrind1385 ../src/curl -q --trace-ascii log/12/trace1385 --trace-time ftp://127.0.0.1:41005/path/file1385 -o log/12/download1385 -i > log/12/stdout1385 2> log/12/stderr1385 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/12/file1385 1385: 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 1385 === Start of file server.cmd Testnum 1385 === End of file server.cmd === Start of file valgrind1385 ==130738== ==130738== Process terminating with default action of signal 4 (SIGILL) ==130738== Illegal opcode at address 0x10B06D ==130738== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130738== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1385 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/1/valgrind1381 ../src/curl -q --trace-ascii log/1/trace1381 --trace-time ftp://127.0.0.1:35701/path/file1381 -o log/1/download1381 -J -D log/1/heads1381 > log/1/stdout1381 2> log/1/stderr1381 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/1/file1381 1381: 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 1381 === Start of file server.cmd Testnum 1381 === End of file server.cmd === Start of file valgrind1381 ==130686== ==130686== Process terminating with default action of signal 4 (SIGILL) ==130686== Illegal opcode at address 0x10B06D ==130686== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130686== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1381 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/8/valgrind1383 ../src/curl -q --trace-ascii log/8/trace1383 --trace-time ftp://127.0.0.1:43509/path/file1383 -o log/8/download1383 -i -D log/8/heads1383 > log/8/stdout1383 2> log/8/stderr1383 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/8/file1383 1383: 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 1383 === Start of file server.cmd Testnum 1383 === End of file server.cmd === Start of file valgrind1383 ==130695== ==130695== Process terminating with default action of signal 4 (SIGILL) ==130695== Illegal opcode at address 0x10B06D ==130695== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==130695== by 0x10B06D: 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/10/valgrind1388 ../src/curl -q --trace-ascii log/10/trace1388 --trace-time ftp://127.0.0.1:33661/path/file1388 -o log/10/download1388 -D - > log/10/stdout1388 2> log/10/stderr1388 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/10/file1388 log/10/name1388 1388: 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 1388 === Start of file server.cmd Testnum 1388 === End of file server.cmd === Start of file valgrind1388 ==131021== ==131021== Process terminating with default action of signal 4 (SIGILL) ==131021== Illegal opcode at address 0x10B06D ==131021== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131021== by 0x10B06D: main (tooCMD (33792): ../libtool --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/valgrind1389 ../src/curl -q --trace-ascii log/4/trace1389 --trace-time ftp://127.0.0.1:36137/path/file1389 -o log/4/download1389 -J -D log/4/heads1389 > log/4/stdout1389 2> log/4/stderr1389 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/4/file1389 log/4/name1389 CMD (33792): ../libtool --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-time ftp://127.0.0.1:35155/path/file1390 -o log/5/download1390 -J -D - > log/5/stdout1390 2> log/5/stderr1390 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/5/file1390 log/5/name1390 CMD (33792): ../libtool --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/valgrind1391 ../src/curl -q --trace-ascii log/2/trace1391 --trace-time ftp://127.0.0.1:42239/path/file1391 -o log/2/download1391 -i -D log/2/heads1391 > log/2/stdout1391 2> log/2/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/1/valgrind1402 ../src/curl -q --output log/1/curl1402.out --include --trace-ascii log/1/trace1402 --trace-time http://127.0.0.1:39283/we/want/1402 --libcurl log/1/test1402.c -d "foo=bar" -d "baz=quux" > log/1/stdout1402 2> log/1/stderr1402 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/2/file1391 log/2/name1391 CMD (33792): ../libtool --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/valgrind1393 ../src/curl -q --trace-ascii log/11/trace1393 --trace-time ftp://127.0.0.1:33323/path/file1393 -o log/11/download1393 -i > log/11/stdout1393 2> log/11/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/8/valgrind1403 ../src/curl -q --output log/8/curl1403.out --include --trace-ascii log/8/trace1403 --trace-time http://127.0.0.1:33791/we/want/1403 --libcurl log/8/test1403.c -G -d "foo=bar" -d "baz=quux" > log/8/stdout1403 2> log/8/stderr1403 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/11/file1393 log/11/name1393 CMD (33792): ../libtool --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/valgrind1400 ../src/curl -q --output log/3/curl1400.out --include --trace-ascii log/3/trace1400 --trace-time http://127.0.0.1:46313/we/want/1400 --libcurl log/3/test1400.c > log/3/stdout1400 2> log/3/stderr1400 CMD (33792): ../libtool --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/valgrind1392 ../src/curl -q --trace-ascii log/9/trace1392 --trace-time ftp://127.0.0.1:39811/path/file1392 -o log/9/download1392 -i -D - > log/9/stdout1392 2> log/9/stderr1392 CMD (33792): ../libtool --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/valgrind1401 ../src/curl -q --output log/12/curl1401.out --include --trace-ascii log/12/trace1401 --trace-time http://127.0.0.1:44175/we/want/1401 --libcurl log/12/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/12/stdout1401 2> log/12/stderr1401 l_main.c:234) === End of file valgrind1388 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/4/valgrind1389 ../src/curl -q --trace-ascii log/4/trace1389 --trace-time ftp://127.0.0.1:36137/path/file1389 -o log/4/download1389 -J -D log/4/heads1389 > log/4/stdout1389 2> log/4/stderr1389 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/4/file1389 log/4/name1389 1389: 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 1389 === Start of file server.cmd Testnum 1389 === End of file server.cmd === Start of file valgrind1389 ==131077== ==131077== Process terminating with default action of signal 4 (SIGILL) ==131077== Illegal opcode at address 0x10B06D ==131077== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131077== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1389 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-time ftp://127.0.0.1:35155/path/file1390 -o log/5/download1390 -J -D - > log/5/stdout1390 2> log/5/stderr1390 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/5/file1390 log/5/name1390 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 server.cmd Testnum 1390 === End of file server.cmd === Start of file valgrind1390 ==131125== ==131125== Process terminating with default action of signal 4 (SIGILL) ==131125== Illegal opcode at address 0x10B06D ==131125== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131125== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1390 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/1/valgrind1402 ../src/curl -q --output log/1/curl1402.out --include --trace-ascii log/1/trace1402 --trace-time http://127.0.0.1:39283/we/want/1402 --libcurl log/1/test1402.c -d "foo=bar" -d "baz=quux" > log/1/stdout1402 2> log/1/stderr1402 1402: 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 1402 === Start of file server.cmd Testnum 1402 === End of file server.cmd === Start of file valgrind1402 ==131279== ==131279== Process terminating with default action of signal 4 (SIGILL) ==131279== Illegal opcode at address 0x10B06D ==131279== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131279== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1402 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/2/valgrind1391 ../src/curl -q --trace-ascii log/2/trace1391 --trace-time ftp://127.0.0.1:42239/path/file1391 -o log/2/download1391 -i -D log/2/heads1391 > log/2/stdout1391 2> log/2/stderr1391 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/2/file1391 log/2/name1391 1391: 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 1391 === Start of file server.cmd Testnum 1391 === End of file server.cmd === Start of file valgrind1391 ==131179== ==131179== Process terminating with default action of signal 4 (SIGILL) ==131179== Illegal opcode at address 0x10B06D ==131179== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131179== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1391 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/11/valgrind1393 ../src/curl -q --trace-ascii log/11/trace1393 --trace-time ftp://127.0.0.1:33323/path/file1393 -o log/11/download1393 -i > log/11/stdout1393 2> log/11/stderr1393 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/11/file1393 log/11/name1393 1393: 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 1393 === Start of file server.cmd Testnum 1393 === End of file server.cmd === Start of file valgrind1393 ==131192== ==131192== Process terminating with default action of signal 4 (SIGILL) ==131192== Illegal opcode at address 0x10B06D ==131192== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131192== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1393 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/3/valgrind1400 ../src/curl -q --output log/3/curl1400.out --include --trace-ascii log/3/trace1400 --trace-time http://127.0.0.1:46313/we/want/1400 --libcurl log/3/test1400.c > log/3/stdout1400 2> log/3/stderr1400 1400: 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 1400 === Start of file server.cmd Testnum 1400 === End of file server.cmd === Start of file valgrind1400 ==131226== ==131226== Process terminating with default action of signal 4 (SIGILL) ==131226== Illegal opcode at address 0x10B06D ==131226== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131226== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1400 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/8/valgrind1403 ../src/curl -q --output log/8/curl1403.out --include --trace-ascii log/8/trace1403 --trace-time http://127.0.0.1:33791/we/want/1403 --libcurl log/8/test1403.c -G -d "foo=bar" -d "baz=quux" > log/8/stdout1403 2> log/8/stderr1403 1403: 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 1403 === Start of file server.cmd Testnum 1403 === End of file server.cmd === Start of file valgrind1403 ==131282== ==131282== Process terminating with default action of signal 4 (SIGILL) ==131282== Illegal opcode at address 0x10B06D ==131282== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131282== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1403 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/12/valgrind1401 ../src/curl -q --output log/12/curl1401.out --include --trace-ascii log/12/trace1401 --trace-time http://127.0.0.1:44175/we/want/1401 --libcurl log/12/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/12/stdout1401 2> log/12/stderr1401 1401: protocol FAILED! There was no CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/9/file1392 log/9/name1392 RUN: Process with pid 125939 forced to die with SIGKILL CMD (33792): ../libtool --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-time http://127.0.0.1:36145/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/4/valgrind1405 ../src/curl -q --output log/4/curl1405.out --include --trace-ascii log/4/trace1405 --trace-time ftp://127.0.0.1:36137/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/4/test1405.c > log/4/stdout1405 2> log/4/stderr1405 CMD (33792): ../libtool --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/valgrind1406 ../src/curl -q --output log/5/curl1406.out --include --trace-ascii log/5/trace1406 --trace-time smtp://127.0.0.1:35871/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/5/test1406.eml --libcurl log/5/test1406.c > log/5/stdout1406 2> log/5/stderr1406 CMD (33792): ../libtool --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/valgrind1411 ../src/curl -q --output log/8/curl1411.out --include --trace-ascii log/8/trace1411 --trace-time http://127.0.0.1:33791/1411 -T log/8/empty1411 > log/8/stdout1411 2> log/8/stderr1411 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 1401 === Start of file server.cmd Testnum 1401 === End of file server.cmd === Start of file valgrind1401 ==131284== ==131284== Process terminating with default action of signal 4 (SIGILL) ==131284== Illegal opcode at address 0x10B06D ==131284== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131284== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1401 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/9/valgrind1392 ../src/curl -q --trace-ascii log/9/trace1392 --trace-time ftp://127.0.0.1:39811/path/file1392 -o log/9/download1392 -i -D - > log/9/stdout1392 2> log/9/stderr1392 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/9/file1392 log/9/name1392 1392: 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 1392 === Start of file server.cmd Testnum 1392 === End of file server.cmd === Start of file valgrind1392 ==131191== ==131191== Process terminating with default action of signal 4 (SIGILL) ==131191== Illegal opcode at address 0x10B06D ==131191== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131191== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1392 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/7/server/tftp_server.pid" --portfile "log/7/server/tftp_server.port" --logfile "log/7/tftp_server.log" --logdir "log/7" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:39859/verifiedserver" 2>log/7/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 125939 port 39859 * pid tftp => 125939 125939 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/7/valgrind1238 ../src/curl -q --output log/7/curl1238.out --include --trace-ascii log/7/trace1238 --trace-time tftp://127.0.0.1:39859//1238 -Y1000 -y2 > log/7/stdout1238 2> log/7/stderr1238 1238: 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 1238 === Start of file server.cmd writedelay: 2000 Testnum 1238 === End of file server.cmd === Start of file tftp_server.log 11:17:07.614678 Wrote pid 125939 to log/7/server/tftp_server.pid 11:17:07.614740 Wrote port 39859 to log/7/server/tftp_server.port 11:17:07.614748 Running IPv4 version on port UDP/39859 11:17:08.630012 trying to get file: verifiedserver mode 1 11:17:08.630031 Are-we-friendly question received 11:17:08.630042 write 11:17:08.630063 read 11:17:08.630658 read: 4 11:17:08.630699 end of one transfer 11:17:09.231048 exit_signal_handler: 15 === End of file tftp_server.log === Start of file valgrind1238 ==126917== ==126917== Process terminating with default action of signal 4 (SIGILL) ==126917== Illegal opcode at address 0x10B06D ==126917== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==126917== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1238 setenv SSL_CERT_FILE = test 1404...[--libcurl for HTTP RFC1867-type formposting - -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-time http://127.0.0.1:36145/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 server.cmd Testnum 1404 === End of file server.cmd === Start of file test1404.txt dummy data === End of file test1404.txt === Start of file valgrind1404 ==131530== ==131530== Process terminating with default action of signal 4 (SIGILL) ==131530== Illegal opcode at address 0x10B06D ==131530== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131530== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1404 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/4/valgrind1405 ../src/curl -q --output log/4/curl1405.out --include --trace-ascii log/4/trace1405 --trace-time ftp://127.0.0.1:36137/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/4/test1405.c > log/4/stdout1405 2> log/4/stderr1405 1405: 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 1405 === 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 ==131586== ==131586== Process terminating with default action of signal 4 (SIGILL) ==131586== Illegal opcode at address 0x10B06D ==131586== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131586== by 0x10B06D: 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/5/valgrind1406 ../src/curl -q --output log/5/curl1406.out --include --trace-ascii log/5/trace1406 --trace-time smtp://127.0.0.1:35871/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/5/test1406.eml --libcurl log/5/test1406.c > log/5/stdout1406 2> log/5/stderr1406 1406: 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 1406 === Start of file server.cmd CAPA SIZE Testnum 1406 === End of file server.cmd === Start of file test1406.eml From: different To: another body === End of file test1406.eml === Start of file valgrind1406 ==131609== ==131609== Process terminating with default action of signal 4 (SIGILL) ==131609== Illegal opcode at address 0x10B06D ==131609== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131609== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1406 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/8/valgrind1411 ../src/curl -q --output log/8/curl1411.out --include --trace-ascii log/8/trace1411 --trace-time http://127.0.0.1:33791/1411 -T log/8/empty1411 > log/8/stdout1411 2> log/8/stderr1411 1411: 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 1411 === Start of file server.cmd Testnum 1411 === End of file server.cmd === Start of file valgrind1411 ==131729== ==131729== Process terminating with defCMD (33792): ../libtool --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/valgrind1412 ../src/curl -q --output log/12/curl1412.out --include --trace-ascii log/12/trace1412 --trace-time http://127.0.0.1:44175/1412 -u testuser:testpass --anyauth http://127.0.0.1:44175/14120001 > log/12/stdout1412 2> log/12/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/1/valgrind1407 ../src/curl -q --output log/1/curl1407.out --include --trace-ascii log/1/trace1407 --trace-time pop3://127.0.0.1:43451/1407 -l -u user:secret --libcurl log/1/test1407.c > log/1/stdout1407 2> log/1/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/7/valgrind1414 ../src/curl -q --output log/7/curl1414.out --include --trace-ascii log/7/trace1414 --trace-time ftp://127.0.0.1:45903/1414 -P - > log/7/stdout1414 2> log/7/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/9/valgrind1413 ../src/curl -q --output log/9/curl1413.out --include --trace-ascii log/9/trace1413 --trace-time http://127.0.0.1:40247/this/1413 -L > log/9/stdout1413 2> log/9/stderr1413 CMD (33792): ../libtool --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/valgrind1409 ../src/curl -q --output log/11/curl1409.out --include --trace-ascii log/11/trace1409 --trace-time http://127.0.0.1:47/1409 -C wrong > log/11/stdout1409 2> log/11/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/3/valgrind1410 ../src/curl -q --output log/3/curl1410.out --include --trace-ascii log/3/trace1410 --trace-time http://127.0.0.1:47/1410 --max-time -4 > log/3/stdout1410 2> log/3/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/10/valgrind1415 ../src/curl -q --output log/10/curl1415.out --include --trace-ascii log/10/trace1415 --trace-time http://example.com/we/want/1415 -b none -c log/10/jar1415.txt -x 127.0.0.1:36145 > log/10/stdout1415 2> log/10/stderr1415 RUN: Process with pid 75075 forced to die with SIGKILL ault action of signal 4 (SIGILL) ==131729== Illegal opcode at address 0x10B06D ==131729== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131729== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1411 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/12/valgrind1412 ../src/curl -q --output log/12/curl1412.out --include --trace-ascii log/12/trace1412 --trace-time http://127.0.0.1:44175/1412 -u testuser:testpass --anyauth http://127.0.0.1:44175/14120001 > log/12/stdout1412 2> log/12/stderr1412 1412: 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 1412 === Start of file server.cmd auth_required Testnum 1412 === End of file server.cmd === Start of file valgrind1412 ==131817== ==131817== Process terminating with default action of signal 4 (SIGILL) ==131817== Illegal opcode at address 0x10B06D ==131817== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131817== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1412 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/1/valgrind1407 ../src/curl -q --output log/1/curl1407.out --include --trace-ascii log/1/trace1407 --trace-time pop3://127.0.0.1:43451/1407 -l -u user:secret --libcurl log/1/test1407.c > log/1/stdout1407 2> log/1/stderr1407 1407: 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 1407 === Start of file server.cmd REPLY LIST +OK 1407 100\r\n. Testnum 1407 === End of file server.cmd === Start of file valgrind1407 ==131701== ==131701== Process terminating with default action of signal 4 (SIGILL) ==131701== Illegal opcode at address 0x10B06D ==131701== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131701== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1407 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/7/valgrind1414 ../src/curl -q --output log/7/curl1414.out --include --trace-ascii log/7/trace1414 --trace-time ftp://127.0.0.1:45903/1414 -P - > log/7/stdout1414 2> log/7/stderr1414 1414: 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 1414 === 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 ==131881== ==131881== Process terminating with default action of signal 4 (SIGILL) ==131881== Illegal opcode at address 0x10B06D ==131881== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131881== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1414 * 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/3/valgrind1410 ../src/curl -q --output log/3/curl1410.out --include --trace-ascii log/3/trace1410 --trace-time http://127.0.0.1:47/1410 --max-time -4 > log/3/stdout1410 2> log/3/stderr1410 curl returned 132, when expecting 2 1410: exit FAILED == Contents of files in the log/3/ dir after test 1410 === Start of file server.cmd Testnum 1410 === End of file server.cmd === Start of file valgrind1410 ==131703== ==131703== Process terminating with default action of signal 4 (SIGILL) ==131703== Illegal opcode at address 0x10B06D ==131703== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131703== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1410 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-time http://127.0.0.1:40247/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 server.cmd Testnum 1413 === End of file server.cmd === Start of file valgrind1413 ==131772== ==131772== Process terminating with default action of signal 4 (SIGILL) ==131772== Illegal opcode at address 0x10B06D ==131772== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131772== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1413 * 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/11/valgrind1409 ../src/curl -q --output log/11/curl1409.out --include --trace-ascii log/11/trace1409 --trace-time http://127.0.0.1:47/1409 -C wrong > log/11/stdout1409 2> log/11/stderr1409 curl returned 132, when expecting 2 1409: exit FAILED == Contents of files in the log/11/ dir after test 1409 === Start of file server.cmd Testnum 1409 === End of file server.cmd === Start of file valgrind1409 ==131704== ==131704== Process terminating with default action of signal 4 (SIGILL) ==131704== Illegal opcode at address 0x10B06D ==131704== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==131704== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1409 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/10/valgrind1415 ../src/curl -q --output log/10/curl1415.out --include --trace-ascii log/10/trace1415 --trace-time http://example.com/we/want/1415 -b none -c log/10/jar1415.txt -x 127.0.0.1:36145 > log/10/stdout1415 2> log/10/stderr1415 1415: 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 1415 === Start of file server.cmd Testnum 1415 === End of file server.cmd === Start of file valgrind1415 ==132038== ==132038== Process terminating with default action of signal 4 (SIGILL) ==132038== Illegal opcode at address 0x10B06D ==132038== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132038== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1415 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/6/valgrind1273 ../src/curl -q --output log/6/curl1273.out --include --trace-ascii log/6/trace1273 --trace-time http://127.0.0.1:41583/1273 -C - -f > log/6/stdout1273 2> log/6/stderr1273 1273: 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 1273 === 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 11:17:08.984074 exit_signal_handler: 15 11:17:08.984155 signalled to diCMD (33792): ../libtool --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/valgrind1416 ../src/curl -q --output log/4/curl1416.out --include --trace-ascii log/4/trace1416 --trace-time http://127.0.0.1:41947/1416 > log/4/stdout1416 2> log/4/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/5/valgrind1417 ../src/curl -q --output log/5/curl1417.out --include --trace-ascii log/5/trace1417 --trace-time http://127.0.0.1:33519/1417 -D log/5/heads1417 > log/5/stdout1417 2> log/5/stderr1417 CMD (0): ../src/curl --max-time 13 --output log/2/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:37453/verifiedserver" 2>log/2/http_ipv6_verify.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/1/valgrind1420 ../src/curl -q --output log/1/curl1420.out --include --trace-ascii log/1/trace1420 --trace-time 'imap://127.0.0.1:37999/1420/;MAILINDEX=1' -u user:secret --libcurl log/1/test1420.c > log/1/stdout1420 2> log/1/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/8/valgrind1418 ../src/curl -q --output log/8/curl1418.out --include --trace-ascii log/8/trace1418 --trace-time http://127.0.0.1:33791/1418 -u testuser:testpass --anyauth http://127.0.0.1:33791/14180003 > log/8/stdout1418 2> log/8/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/7/valgrind1421 ../src/curl -q --include --trace-ascii log/7/trace1421 --trace-time --proxy http://127.0.0.1:35853 http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990 > log/7/stdout1421 2> log/7/stderr1421 e 11:17:08.984215 ========> IPv4 sws (port 41583 pid: 75075) exits with signal (15) 11:17:08.984225 ========> sws quits === End of file http_server.log === Start of file server.cmd Testnum 1273 === End of file server.cmd === Start of file valgrind1273 ==127696== ==127696== Process terminating with default action of signal 4 (SIGILL) ==127696== Illegal opcode at address 0x10B06D ==127696== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==127696== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1273 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/4/valgrind1416 ../src/curl -q --output log/4/curl1416.out --include --trace-ascii log/4/trace1416 --trace-time http://127.0.0.1:41947/1416 > log/4/stdout1416 2> log/4/stderr1416 1416: 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 1416 === Start of file server.cmd Testnum 1416 === End of file server.cmd === Start of file valgrind1416 ==132096== ==132096== Process terminating with default action of signal 4 (SIGILL) ==132096== Illegal opcode at address 0x10B06D ==132096== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132096== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1416 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/5/valgrind1417 ../src/curl -q --output log/5/curl1417.out --include --trace-ascii log/5/trace1417 --trace-time http://127.0.0.1:33519/1417 -D log/5/heads1417 > log/5/stdout1417 2> log/5/stderr1417 1417: 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 1417 === Start of file server.cmd Testnum 1417 === End of file server.cmd === Start of file valgrind1417 ==132102== ==132102== Process terminating with default action of signal 4 (SIGILL) ==132102== Illegal opcode at address 0x10B06D ==132102== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132102== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1417 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/1/valgrind1420 ../src/curl -q --output log/1/curl1420.out --include --trace-ascii log/1/trace1420 --trace-time 'imap://127.0.0.1:37999/1420/;MAILINDEX=1' -u user:secret --libcurl log/1/test1420.c > log/1/stdout1420 2> log/1/stderr1420 1420: 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 1420 === Start of file server.cmd Testnum 1420 === End of file server.cmd === Start of file valgrind1420 ==132228== ==132228== Process terminating with default action of signal 4 (SIGILL) ==132228== Illegal opcode at address 0x10B06D ==132228== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132228== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1420 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/8/valgrind1418 ../src/curl -q --output log/8/curl1418.out --include --trace-ascii log/8/trace1418 --trace-time http://127.0.0.1:33791/1418 -u testuser:testpass --anyauth http://127.0.0.1:33791/14180003 > log/8/stdout1418 2> log/8/stderr1418 1418: 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 1418 === Start of file server.cmd connection-monitor Testnum 1418 === End of file server.cmd === Start of file valgrind1418 ==132193== ==132193== Process terminating with default action of signal 4 (SIGILL) ==132193== Illegal opcode at address 0x10B06D ==132193== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132193== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1418 CMD (33792): ../libtool --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/valgrind1423 ../src/curl -q --trace-ascii log/3/trace1423 --trace-time http://127.0.0.1:46313/1423 -o log/3/outfile1423 file:///startdir/src/build-curl/tests/log/3/outfile1423 > log/3/stdout1423 2> log/3/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/11/valgrind1427 ../src/curl -q --output log/11/curl1427.out --include --trace-ascii log/11/trace1427 --trace-time http://127.0.0.1:47/1427 -m 184467440737095510 > log/11/stdout1427 2> log/11/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/9/valgrind1424 ../src/curl -q --trace-ascii log/9/trace1424 --trace-time http://127.0.0.1:40247/1424 -z "dec 12 11:00:00 1999 GMT" -o log/9/outfile1424 > log/9/stdout1424 2> log/9/stderr1424 CMD (0): perl /startdir/src/curl/tests/libtest/notexists.pl log/3/1423 CMD (33792): ../libtool --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/valgrind1419 ../src/curl -q --output log/12/curl1419.out --include --trace-ascii log/12/trace1419 --trace-time http://127.0.0.1:44175/1419 --anyauth http://127.0.0.1:44175/14190003 > log/12/stdout1419 2> log/12/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/10/valgrind1428 ../src/curl -q --output log/10/curl1428.out --include --trace-ascii log/10/trace1428 --trace-time http://test.1428:36145/we/want/that/page/1428 -p -x 127.0.0.1:36757 --user 'iam:my:;self' --header "header-type: server" --proxy-header "header-type: proxy" > log/10/stdout1428 2> log/10/stderr1428 CMD (33792): ../libtool --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/valgrind1430 ../src/curl -q --output log/4/curl1430.out --include --trace-ascii log/4/trace1430 --trace-time http://127.0.0.1:41947/1430 > log/4/stdout1430 2> log/4/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/5/valgrind1431 ../src/curl -q --output log/5/curl1431.out --include --trace-ascii log/5/trace1431 --trace-time http://127.0.0.1:33519/1431 > log/5/stdout1431 2> log/5/stderr1431 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/7/valgrind1421 ../src/curl -q --include --trace-ascii log/7/trace1421 --trace-time --proxy http://127.0.0.1:35853 http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990 > log/7/stdout1421 2> log/7/stderr1421 1421: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:14.968182197 +0200 +++ log/7/check-generated 2024-05-23 11:17:14.968182197 +0200 @@ -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/7/ 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 server.cmd connection-monitor Testnum 1421 === End of file server.cmd === Start of file valgrind1421 ==132211== ==132211== Process terminating with default action of signal 4 (SIGILL) ==132211== Illegal opcode at address 0x10B06D ==132211== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132211== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1421 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/3/valgrind1423 ../src/curl -q --trace-ascii log/3/trace1423 --trace-time http://127.0.0.1:46313/1423 -o log/3/outfile1423 file:///startdir/src/build-curl/tests/log/3/outfile1423 > log/3/stdout1423 2> log/3/stderr1423 postcheck perl /startdir/src/curl/tests/libtest/notexists.pl log/3/1423 1423: 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 1423 === Start of file server.cmd Testnum 1423 === End of file server.cmd === Start of file valgrind1423 ==132210== ==132210== Process terminating with default action of signal 4 (SIGILL) ==132210== Illegal opcode at address 0x10B06D ==132210== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132210== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1423 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/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1424 ../src/curl -q --trace-ascii log/9/trace1424 --trace-time http://127.0.0.1:40247/1424 -z "dec 12 11:00:00 1999 GMT" -o log/9/outfile1424 > log/9/stdout1424 2> log/9/stderr1424 1424: 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 1424 === 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 valgrind1424 ==132221== ==132221== Process terminating with default action of signal 4 (SIGILL) ==132221== Illegal opcode at address 0x10B06D ==132221== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132221== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1424 * 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/11/valgrind1427 ../src/curl -q --output log/11/curl1427.out --include --trace-ascii log/11/trace1427 --trace-time http://127.0.0.1:47/1427 -m 184467440737095510 > log/11/stdout1427 2> log/11/stderr1427 curl returned 132, when expecting 2 1427: exit FAILED == Contents of files in the log/11/ dir after test 1427 === Start of file server.cmd Testnum 1427 === End of file server.cmd === Start of file valgrind1427 ==132200== ==132200== Process terminating with default action of signal 4 (SIGILL) ==132200== Illegal opcode at address 0x10B06D ==132200== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132200== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1427 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/12/valgrind1419 ../src/curl -q --output log/12/curl1419.out --include --trace-ascii log/12/trace1419 --trace-time http://127.0.0.1:44175/1419 --anyauth http://127.0.0.1:44175/14190003 > log/12/stdout1419 2> log/12/stderr1419 1419: 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 1419 === Start of file server.cmd connection-monitor Testnum 1419 === End of file server.cmd === Start of file valgrind1419 ==132196== ==132196== Process terminating with default action of signal 4 (SIGILL) ==132196== Illegal opcode at address 0x10B06D ==132196== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132196== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1419 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-time http://test.1428:36145/we/want/that/page/1428 -p -x 127.0.0.1:36757 --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 server.cmd Testnum 1428 === End of file server.cmd === Start of file valgrind1428 ==132534== ==132534== Process terminating with default action of signal 4 (SIGILL) ==132534== Illegal opcode at address 0x10B06D ==132534== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132534== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1428 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/4/valgrind1430 ../src/curl -q --output log/4/curl1430.out --include --trace-ascii log/4/trace1430 --trace-time http://127.0.0.1:41947/1430 > log/4/stdout1430 2> log/4/stderr1430 1430: 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 1430 === Start of file server.cmd Testnum 1430 === End of file server.cmd === Start of file valgrind1430 ==132594== ==132594== Process terminating with default action of signal 4 (SIGILL) ==132594== Illegal opcode at address 0x10B06D ==132594== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132594== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1430 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/5/valgrind1431 ../src/curl -q --output log/5/curl1431.out --include --trace-ascii log/5/trace1431 --trace-time http://127.0.0.1:33519/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/2/valgrind1408 ../src/curl -q --output log/2/curl1408.out --include --trace-ascii log/2/trace1408 --trace-time -c log/2/jar1408 -g http://[::1]:37453/path/14080001 http://[::1]:37453/path/14080002 > log/2/stdout1408 2> log/2/stderr1408 CMD (33792): ../libtool --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/valgrind1439 ../src/curl -q --include --trace-ascii log/10/trace1439 --trace-time http://127.0.0.1:36145/1439 --write-out '%{http_version}' > log/10/stdout1439 2> log/10/stderr1439 31 > log/5/stdout1431 2> log/5/stderr1431 1431: 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 1431 === Start of file server.cmd Testnum 1431 === End of file server.cmd === Start of file valgrind1431 ==132606== ==132606== Process terminating with default action of signal 4 (SIGILL) ==132606== Illegal opcode at address 0x10B06D ==132606== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132606== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1431 startnew: perl -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: ../src/curl --max-time 13 --output log/2/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:37453/verifiedserver" 2>log/2/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 131697 port 37453 * pid http-ipv6 => 131697 131697 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/2/valgrind1408 ../src/curl -q --output log/2/curl1408.out --include --trace-ascii log/2/trace1408 --trace-time -c log/2/jar1408 -g http://[::1]:37453/path/14080001 http://[::1]:37453/path/14080002 > log/2/stdout1408 2> log/2/stderr1408 1408: 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 1408 === Start of file http_ipv6_server.log 11:17:13.307059 Running HTTP IPv6 version on port 37453 11:17:13.307121 Wrote pid 131697 to log/2/server/http_ipv6_server.pid 11:17:13.307139 Wrote port 37453 to log/2/server/http_ipv6_server.port 11:17:14.314737 ====> Client connect 11:17:14.314760 accept_connection 3 returned 4 11:17:14.314774 accept_connection 3 returned 0 11:17:14.314786 Read 88 bytes 11:17:14.314795 Process 88 bytes request 11:17:14.314815 Got request: GET /verifiedserver HTTP/1.1 11:17:14.314823 Are-we-friendly question received 11:17:14.314844 Wrote request (88 bytes) input to log/2/server.input 11:17:14.314864 Identifying ourselves as friends 11:17:14.314928 Response sent (57 bytes) and written to log/2/server.response 11:17:14.314939 special request received, no persistency 11:17:14.314946 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:37453... * Connected to ::1 (::1) port 37453 > GET /verifiedserver HTTP/1.1 > Host: [::1]:37453 > User-Agent: curl/8.8.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: 131697 === 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: 18 WE ROOLZ: 131697 === End of file server.response === Start of file valgrind1408 ==132705== ==132705== Process terminating with default action of signal 4 (SIGILL) ==132705== Illegal opcode at address 0x10B06D ==132705== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132705== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1408 CMD (33792): ../libtool --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/valgrind1434 ../src/curl -q --output log/7/curl1434.out --include --trace-ascii log/7/trace1434 --trace-time http://127.0.0.1:35853/1434 -C 100 > log/7/stdout1434 2> log/7/stderr1434 CMD (33792): ../libtool --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/valgrind1437 ../src/curl -q --output log/11/curl1437.out --include --trace-ascii log/11/trace1437 --trace-time http://127.0.0.1:35843/1437 -u testuser:testpass --digest > log/11/stdout1437 2> log/11/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/1/valgrind1432 ../src/curl -q --output log/1/curl1432.out --include --trace-ascii log/1/trace1432 --trace-time http://127.0.0.1:39283/1432 > log/1/stdout1432 2> log/1/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/12/valgrind1438 ../src/curl -q --include --trace-ascii log/12/trace1438 --trace-time http://127.0.0.1:44175/1438 --write-out '%{scheme}' > log/12/stdout1438 2> log/12/stderr1438 CMD (33792): ../libtool --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/valgrind1433 ../src/curl -q --output log/8/curl1433.out --include --trace-ascii log/8/trace1433 --trace-time http://127.0.0.1:33791/1433 > log/8/stdout1433 2> log/8/stderr1433 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/10/valgrind1439 ../src/curl -q --include --trace-ascii log/10/trace1439 --trace-time http://127.0.0.1:36145/1439 --write-out '%{http_version}' > log/10/stdout1439 2> log/10/stderr1439 1439: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:15.488192877 +0200 +++ log/10/check-generated 2024-05-23 11:17:15.488192877 +0200 @@ -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/10/ 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 server.cmd Testnum 1439 === End of file server.cmd === Start of file valgrind1439 ==132815== ==132815== Process terminating with default action of signal 4 (SIGILL) ==132815== Illegal opcode at address 0x10B06D ==132815== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132815== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1439 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/7/valgrind1434 ../src/curl -q --output log/7/curl1434.out --include --trace-ascii log/7/trace1434 --trace-time http://127.0.0.1:35853/1434 -C 100 > log/7/stdout1434 2> log/7/stderr1434 1434: 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 1434 === Start of file curl1434.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1434.out === Start of file server.cmd Testnum 1434 === End of file server.cmd === Start of file valgrind1434 ==132789== ==132789== Process terminating with default action of signal 4 (SIGILL) ==132789== Illegal opcode at address 0x10B06D ==132789== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132789== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1434 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/11/valgrind1437 ../src/curl -q --output log/11/curl1437.out --include --trace-ascii log/11/trace1437 --trace-time http://127.0.0.1:35843/1437 -u testuser:testpass --digest > log/11/stdout1437 2> log/11/stderr1437 1437: 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 1437 === Start of file server.cmd Testnum 1437 === End of file server.cmd === Start of file valgrind1437 ==132788== ==132788== Process terminating with default action of signal 4 (SIGILL) ==132788== Illegal opcode at address 0x10B06D ==132788== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132788== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1437 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/1/valgrind1432 ../src/curl -q --output log/1/curl1432.out --include --trace-ascii log/1/trace1432 --trace-time http://127.0.0.1:39283/1432 > log/1/stdout1432 2> log/1/stderr1432 1432: 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 1432 === Start of file server.cmd Testnum 1432 === End of file server.cmd === Start of file valgrind1432 ==132761== ==132761== Process terminating with default action of signal 4 (SIGILL) ==132761== Illegal opcode at address 0x10B06D ==132761== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132761== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1432 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/8/valgrind1433 ../src/curl -q --output log/8/curl1433.out --include --trace-ascii log/8/trace1433 --trace-time http://127.0.0.1:33791/1433 > log/8/stdout1433 2> log/8/stderr1433 1433: 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 1433 === Start of file server.cmd Testnum 1433 === End of file server.cmd === Start of file valgrind1433 ==132762== ==132762== Process terminating with default action of signal 4 (SIGILL) ==132762== Illegal opcode at address 0x10B06D ==132762== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132762== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1433 /usr/bin/env: ‘python3’: No such file or directory CMD (0): ../src/curl --max-time 13 --output log/6/http_verify.out --silent --verbose --globoff "http://127.0.0.1:42657/verifiedserver" 2>log/6/http_verify.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/4/valgrind1440 ../src/curl -q --include --trace-ascii log/4/trace1440 --trace-time file://localhost//startdir/src/build-curl/tests/log/4/non-existent-file.txt --write-out '%{' > log/4/stdout1440 2> log/4/stderr1440 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/12/valgrind1438 ../src/curl -q --include --trace-ascii log/12/trace1438 --trace-time http://127.0.0.1:44175/1438 --write-out '%{scheme}' > log/12/stdout1438 2> log/12/stderr1438 1438: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:15.514860092 +0200 +++ log/12/check-generated 2024-05-23 11:17:15.514860092 +0200 @@ -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/12/ 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 server.cmd Testnum 1438 === End of file server.cmd === Start of file valgrind1438 ==132811== ==132811== Process terminating with default action of signal 4 (SIGILL) ==132811== Illegal opcode at address 0x10B06D ==132811== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==132811== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1438 /usr/bin/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/5/valgrind1441 ../src/curl -q --include --trace-ascii log/5/trace1441 --trace-time file://localhost//startdir/src/build-curl/tests/log/5/non-existent-file.txt --write-out '%' > log/5/stdout1441 2> log/5/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/4/valgrind1440 ../src/curl -q --include --trace-ascii log/4/trace1440 --trace-time file://localhost//startdir/src/build-curl/tests/log/4/non-existent-file.txt --write-out '%{' > log/4/stdout1440 2> log/4/stderr1440 1440: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:15.654862968 +0200 +++ log/4/check-generated 2024-05-23 11:17:15.654862968 +0200 @@ -1 +0,0 @@ -%{ == Contents of files in the log/4/ dir after test 1440 === Start of file check-expected %{ === End of file check-expected === Start of file server.cmd Testnum 1440 === End of file server.cmd === Start of file valgrind1440 ==133054== ==133054== Process terminating with default action of signal 4 (SIGILL) ==133054== Illegal opcode at address 0x10B06D ==133054== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133054== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1440 /usr/bin/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/2/valgrind1442 ../src/curl -q --include --trace-ascii log/2/trace1442 --trace-time file://localhost//startdir/src/build-curl/tests/log/2/non-existent-file.txt --write-out '\' > log/2/stdout1442 2> log/2/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/5/valgrind1441 ../src/curl -q --include --trace-ascii log/5/trace1441 --trace-time file://localhost//startdir/src/build-curl/tests/log/5/non-existent-file.txt --write-out '%' > log/5/stdout1441 2> log/5/stderr1441 1441: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:15.671529977 +0200 +++ log/5/check-generated 2024-05-23 11:17:15.671529977 +0200 @@ -1 +0,0 @@ -% == Contents of files in the log/5/ dir after test 1441 === Start of file check-expected % === End of file check-expected === Start of file server.cmd Testnum 1441 === End of file server.cmd === Start of file valgrind1441 ==133055== ==133055== Process terminating with default action of signal 4 (SIGILL) ==133055== Illegal opcode at address 0x10B06D ==133055== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133055== by 0x10B06D: 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/10/valgrind1444 ../src/curl -q --output log/10/curl1444.out --include --trace-ascii log/10/trace1444 --trace-time ftp://127.0.0.1:33661/1444 --remote-time > log/10/stdout1444 2> log/10/stderr1444 CMD (256): perl -e 'exit((stat("log/10/curl1444.out"))[9] != 1234567890)' CMD (33792): ../libtool --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/valgrind1447 ../src/curl -q --output log/11/curl1447.out --include --trace-ascii log/11/trace1447 --trace-time --proxy "http://a:b@/x" http://127.0.0.1:47 > log/11/stdout1447 2> log/11/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/7/valgrind1445 ../src/curl -q --output log/7/curl1445.out --include --trace-ascii log/7/trace1445 --trace-time file://localhost/startdir/src/build-curl/tests/log/7/test1445.dir/plainfile.txt --remote-time > log/7/stdout1445 2> log/7/stderr1445 CMD (256): perl /startdir/src/curl/tests/libtest/test613.pl postprocess /startdir/src/build-curl/tests/log/7/test1445.dir && \ perl -e 'exit((stat("log/7/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/8/valgrind1449 ../src/curl -q --output log/8/curl1449.out --include --trace-ascii log/8/trace1449 --trace-time ftp://127.0.0.1:43509/1449 -r 36893488147419103232- > log/8/stdout1449 2> log/8/stderr1449 CMD (0): ../src/curl --max-time 13 --output log/3/http_unix_verify.out --silent --verbose --globoff --unix-socket '/tmp/curl-http-lh6ZiEZi' "http://127.0.0.1:80/verifiedserver" 2>log/3/http_unix_verify.log CMD (0): ../src/curl --max-time 13 --output log/9/http_unix_verify.out --silent --verbose --globoff --unix-socket '/tmp/curl-http-B77cC4n6' "http://127.0.0.1:80/verifiedserver" 2>log/9/http_unix_verify.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/1/valgrind1448 ../src/curl -q --include --trace-ascii log/1/trace1448 --trace-time http://åäö.se:39283/1448 --resolve xn--4cab6c.se:39283:127.0.0.1 -L --connect-to 127.0.0.1:39283:127.0.0.1:39283 > log/1/stdout1448 2> log/1/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/2/valgrind1442 ../src/curl -q --include --trace-ascii log/2/trace1442 --trace-time file://localhost//startdir/src/build-curl/tests/log/2/non-existent-file.txt --write-out '\' > log/2/stdout1442 2> log/2/stderr1442 1442: stdout FAILED: --- log/2/check-expected 2024-05-23 11:17:15.911534906 +0200 +++ log/2/check-generated 2024-05-23 11:17:15.911534906 +0200 @@ -1 +0,0 @@ -\ == Contents of files in the log/2/ dir after test 1442 === Start of file check-expected \ === End of file check-expected === Start of file server.cmd Testnum 1442 === End of file server.cmd === Start of file valgrind1442 ==133149== ==133149== Process terminating with default action of signal 4 (SIGILL) ==133149== Illegal opcode at address 0x10B06D ==133149== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133149== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1442 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/10/valgrind1444 ../src/curl -q --output log/10/curl1444.out --include --trace-ascii log/10/trace1444 --trace-time ftp://127.0.0.1:33661/1444 --remote-time > log/10/stdout1444 2> log/10/stderr1444 postcheck perl -e 'exit((stat("log/10/curl1444.out"))[9] != 1234567890)' 1444: postcheck FAILED == Contents of files in the log/10/ dir after test 1444 === Start of file server.cmd Testnum 1444 === End of file server.cmd === Start of file valgrind1444 ==133199== ==133199== Process terminating with default action of signal 4 (SIGILL) ==133199== Illegal opcode at address 0x10B06D ==133199== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133199== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1444 * 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/11/valgrind1447 ../src/curl -q --output log/11/curl1447.out --include --trace-ascii log/11/trace1447 --trace-time --proxy "http://a:b@/x" http://127.0.0.1:47 > log/11/stdout1447 2> log/11/stderr1447 curl returned 132, when expecting 5 1447: exit FAILED == Contents of files in the log/11/ dir after test 1447 === Start of file server.cmd Testnum 1447 === End of file server.cmd === Start of file valgrind1447 ==133216== ==133216== Process terminating with default action of signal 4 (SIGILL) ==133216== Illegal opcode at address 0x10B06D ==133216== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133216== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1447 prechecked /usr/bin/perl /startdir/src/curl/tests/libtest/test613.pl prepare /startdir/src/build-curl/tests/log/7/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/7/valgrind1445 ../src/curl -q --output log/7/curl1445.out --include --trace-ascii log/7/trace1445 --trace-time file://localhost/startdir/src/build-curl/tests/log/7/test1445.dir/plainfile.txt --remote-time > log/7/stdout1445 2> log/7/stderr1445 postcheck perl /startdir/src/curl/tests/libtest/test613.pl postprocess /startdir/src/build-curl/tests/log/7/test1445.dir && \ perl -e 'exit((stat("log/7/curl1445.out"))[9] != 946728000)' 1445: postcheck FAILED == Contents of files in the log/7/ dir after test 1445 === Start of file server.cmd Testnum 1445 === End of file server.cmd === Start of file valgrind1445 ==133258== ==133258== Process terminating with default action of signal 4 (SIGILL) ==133258== Illegal opcode at address 0x10B06D ==133258== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133258== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1445 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/8/valgrind1449 ../src/curl -q --output log/8/curl1449.out --include --trace-ascii log/8/trace1449 --trace-time ftp://127.0.0.1:43509/1449 -r 36893488147419103232- > log/8/stdout1449 2> log/8/stderr1449 1449: 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 1449 === Start of file server.cmd Testnum 1449 === End of file server.cmd === Start of file valgrind1449 ==133255== ==133255== Process terminating with default action of signal 4 (SIGILL) ==133255== Illegal opcode at address 0x10B06D ==133255== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133255== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1449 CMD (33792): ../libtool --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/valgrind1429 ../src/curl -q --include --trace-ascii log/6/trace1429 --trace-time http://127.0.0.1:42657/1429 --write-out '%{response_code}' > log/6/stdout1429 2> log/6/stderr1429 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/1/valgrind1448 ../src/curl -q --include --trace-ascii log/1/trace1448 --trace-time http://åäö.se:39283/1448 --resolve xn--4cab6c.se:39283:127.0.0.1 -L --connect-to 127.0.0.1:39283:127.0.0.1:39283 > log/1/stdout1448 2> log/1/stderr1448 1448: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:16.004870157 +0200 +++ log/1/check-generated 2024-05-23 11:17:16.004870157 +0200 @@ -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:39283/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/1/ 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:39283/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 server.cmd Testnum 1448 === End of file server.cmd === Start of file valgrind1448 ==133313== ==133313== Process terminating with default action of signal 4 (SIGILL) ==133313== Illegal opcode at address 0x10B06D ==133313== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133313== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1448 CMD (33792): ../libtool --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/valgrind1453 ../src/curl -q --output log/2/curl1453.out --include --trace-ascii log/2/trace1453 --trace-time tftp://127.0.0.1:47/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz > log/2/stdout1453 2> log/2/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/10/valgrind1455 ../src/curl -q --output log/10/curl1455.out --include --trace-ascii log/10/trace1455 --trace-time http://127.0.0.1:36145/1455 --haproxy-protocol -H "Testno: 1455" > log/10/stdout1455 2> log/10/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/3/valgrind1435 ../src/curl -q --output log/3/curl1435.out --include --trace-ascii log/3/trace1435 --trace-time --unix-socket /tmp/curl-http-lh6ZiEZi http://server-interpreted.example.com/1435 > log/3/stdout1435 2> log/3/stderr1435 startnew: perl -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: ../src/curl --max-time 13 --output log/6/http_verify.out --silent --verbose --globoff "http://127.0.0.1:42657/verifiedserver" 2>log/6/http_verify.log RUN: HTTP server is on PID 132591 port 42657 * pid http => 132591 132591 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/6/valgrind1429 ../src/curl -q --include --trace-ascii log/6/trace1429 --trace-time http://127.0.0.1:42657/1429 --write-out '%{response_code}' > log/6/stdout1429 2> log/6/stderr1429 1429: stdout FAILED: --- log/6/check-expected 2024-05-23 11:17:16.021537167 +0200 +++ log/6/check-generated 2024-05-23 11:17:16.021537167 +0200 @@ -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/6/ 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 http_server.log 11:17:14.108441 Running HTTP IPv4 version on port 42657 11:17:14.108528 Wrote pid 132591 to log/6/server/http_server.pid 11:17:14.108551 Wrote port 42657 to log/6/server/http_server.port 11:17:15.108906 ====> Client connect 11:17:15.108926 accept_connection 3 returned 4 11:17:15.108938 accept_connection 3 returned 0 11:17:15.108950 Read 92 bytes 11:17:15.108958 Process 92 bytes request 11:17:15.108975 Got request: GET /verifiedserver HTTP/1.1 11:17:15.108982 Are-we-friendly question received 11:17:15.109003 Wrote request (92 bytes) input to log/6/server.input 11:17:15.109020 Identifying ourselves as friends 11:17:15.109079 Response sent (57 bytes) and written to log/6/server.response 11:17:15.109087 special request received, no persistency 11:17:15.109094 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42657... * Connected to 127.0.0.1 (127.0.0.1) port 42657 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42657 > User-Agent: curl/8.8.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: 132591 === 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: 18 WE ROOLZ: 132591 === End of file server.response === Start of file valgrind1429 ==133459== ==133459== Process terminating with default action of signal 4 (SIGILL) ==133459== Illegal opcode at address 0x10B06D ==133459== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133459== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1429 * 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/2/valgrind1453 ../src/curl -q --output log/2/curl1453.out --include --trace-ascii log/2/trace1453 --trace-time tftp://127.0.0.1:47/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz > log/2/stdout1453 2> log/2/stderr1453 curl returned 132, when expecting 71 1453: exit FAILED == Contents of files in the log/2/ dir after test 1453 === Start of file server.cmd Testnum 1453 === End of file server.cmd === Start of file valgrind1453 ==133520== ==133520== Process terminating with default action of signal 4 (SIGILL) ==133520== Illegal opcode at address 0x10B06D ==133520== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133520== by 0x10B06D: 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/10/valgrind1455 ../src/curl -q --output log/10/curl1455.out --include --trace-ascii log/10/trace1455 --trace-time http://127.0.0.1:36145/1455 --haproxy-protocol -H "Testno: 1455" > log/10/stdout1455 2> log/10/stderr1455 1455: 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 1455 === Start of file server.cmd Testnum 1455 === End of file server.cmd === Start of file valgrind1455 ==133546== ==133546== Process terminating with default action of signal 4 (SIGILL) ==133546== Illegal opcode at address 0x10B06D ==133546== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133546== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1455 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/3/server/http_unix_server.pid" --logfile "log/3/http_unix_server.log" --logdir "log/3" --portfile log/3/server/http_unix_server.port --config log/3/server.cmd --unix-socket '/tmp/curl-http-lh6ZiEZi' --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/3/http_unix_verify.out --silent --verbose --globoff --unix-socket '/tmp/curl-http-lh6ZiEZi' "http://127.0.0.1:80/verifiedserver" 2>log/3/http_unix_verify.log RUN: HTTP-unix server is on PID 132758 port /tmp/curl-http-lh6ZiEZi * pid http-unix => 132758 132758 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/3/valgrind1435 ../src/curl -q --output log/3/curl1435.out --include --trace-ascii log/3/trace1435 --trace-time --unix-socket /tmp/curl-http-lh6ZiEZi http://server-interpreted.example.com/1435 > log/3/stdout1435 2> log/3/stderr1435 1435: 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 1435 === Start of file http_unix_server.log 11:17:14.515236 Running HTTP unix version on /tmp/curl-http-lh6ZiEZi 11:17:14.515293 Wrote pid 132758 to log/3/server/http_unix_server.pid 11:17:14.515311 Wrote port 8999 to log/3/server/http_unix_server.port 11:17:15.514799 ====> Client connect 11:17:15.514813 accept_connection 3 returned 4 11:17:15.514822 accept_connection 3 returned 0 11:17:15.514831 Read 86 bytes 11:17:15.514839 Process 86 bytes request 11:17:15.514853 Got request: GET /verifiedserver HTTP/1.1 11:17:15.514858 Are-we-friendly question received 11:17:15.514874 Wrote request (86 bytes) input to log/3/server.input 11:17:15.514887 Identifying ourselves as 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/8/valgrind1458 ../src/curl -q --output log/8/curl1458.out --include --trace-ascii log/8/trace1458 --trace-time --resolve *:33791:127.0.0.1 http://example.com:33791/1458 > log/8/stdout1458 2> log/8/stderr1458 CMD (33792): ../libtool --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/valgrind1457 ../src/curl -q --include --trace-ascii log/7/trace1457 --trace-time http://127.0.0.1:35853/1457 --silent --write-out 'line1%{stderr}line2%{stdout}line3' > log/7/stdout1457 2> log/7/stderr1457 riends 11:17:15.514911 Response sent (57 bytes) and written to log/3/server.response 11:17:15.514917 special request received, no persistency 11:17:15.514922 ====> Client disconnect 0 === End of file http_unix_server.log === Start of file http_unix_verify.log * Trying /tmp/curl-http-lh6ZiEZi:0... * Connected to 127.0.0.1 (/tmp/curl-http-lh6ZiEZi) port 0 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1 > User-Agent: curl/8.8.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_unix_verify.log === Start of file http_unix_verify.out WE ROOLZ: 132758 === End of file http_unix_verify.out === Start of file server.cmd Testnum 1435 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 132758 === End of file server.response === Start of file valgrind1435 ==133664== ==133664== Process terminating with default action of signal 4 (SIGILL) ==133664== Illegal opcode at address 0x10B06D ==133664== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133664== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1435 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/8/valgrind1458 ../src/curl -q --output log/8/curl1458.out --include --trace-ascii log/8/trace1458 --trace-time --resolve *:33791:127.0.0.1 http://example.com:33791/1458 > log/8/stdout1458 2> log/8/stderr1458 1458: 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 1458 === Start of file server.cmd Testnum 1458 === End of file server.cmd === Start of file valgrind1458 ==133663== ==133663== Process terminating with default action of signal 4 (SIGILL) ==133663== Illegal opcode at address 0x10B06D ==133663== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133663== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1458 CMD (33792): ../libtool --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/valgrind1436 ../src/curl -q --include --trace-ascii log/9/trace1436 --trace-time --unix-socket /tmp/curl-http-B77cC4n6 http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003 > log/9/stdout1436 2> log/9/stderr1436 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/7/valgrind1457 ../src/curl -q --include --trace-ascii log/7/trace1457 --trace-time http://127.0.0.1:35853/1457 --silent --write-out 'line1%{stderr}line2%{stdout}line3' > log/7/stdout1457 2> log/7/stderr1457 1457: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:16.481546615 +0200 +++ log/7/check-generated 2024-05-23 11:17:16.481546615 +0200 @@ -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/7/ 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 server.cmd Testnum 1457 === End of file server.cmd === Start of file valgrind1457 ==133649== ==133649== Process terminating with default action of signal 4 (SIGILL) ==133649== Illegal opcode at address 0x10B06D ==133649== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133649== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1457 CMD (33792): ../libtool --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/valgrind1462 ../src/curl -q --include --trace-ascii log/6/trace1462 --trace-time --help sdfafdsfadsfsd > log/6/stdout1462 2> log/6/stderr1462 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/9/server/http_unix_server.pid" --logfile "log/9/http_unix_server.log" --logdir "log/9" --portfile log/9/server/http_unix_server.port --config log/9/server.cmd --unix-socket '/tmp/curl-http-B77cC4n6' --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/9/http_unix_verify.out --silent --verbose --globoff --unix-socket '/tmp/curl-http-B77cC4n6' "http://127.0.0.1:80/verifiedserver" 2>log/9/http_unix_verify.log RUN: HTTP-unix server is on PID 132760 port /tmp/curl-http-B77cC4n6 * pid http-unix => 132760 132760 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/9/valgrind1436 ../src/curl -q --include --trace-ascii log/9/trace1436 --trace-time --unix-socket /tmp/curl-http-B77cC4n6 http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003 > log/9/stdout1436 2> log/9/stderr1436 1436: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:16.494880222 +0200 +++ log/9/check-generated 2024-05-23 11:17:16.494880222 +0200 @@ -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/9/ 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 http_unix_server.log 11:17:14.512904 Running HTTP unix version on /tmp/curl-http-B77cC4n6 11:17:14.512983 Wrote pid 132760 to log/9/server/http_unix_server.pid 11:17:14.513007 Wrote port 8999 to log/9/server/http_unix_server.port 11:17:15.515867 ====> Client connect 11:17:15.515879 accept_connection 3 returned 4 11:17:15.515889 accept_connection 3 returned 0 11:17:15.515897 Read 86 bytes 11:17:15.515903 Process 86 bytes request 11:17:15.515915 Got request: GET /verifiedserver HTTP/1.1 11:17:15.515920 Are-we-friendly question received 11:17:15.515935 Wrote request (86 bytes) input to log/9/server.input 11:17:15.515947 Identifying ourselves as friends 11:17:15.515969 Response sent (57 bytes) and written to log/9/server.response 11:17:15.515974 special request received, no persistency 11:17:15.515980 ====> Client disconnect 0 === End of file http_unix_server.log === Start of file http_unix_verify.log * Trying /tmp/curl-http-B77cC4n6:0... * Connected to 127.0.0.1 (/tmp/curl-http-B77cC4n6) port 0 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1 > User-Agent: curl/8.8.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_unix_verify.log === Start of file http_unix_verify.out WE ROOLZ: 132760 === End of file http_unix_verify.out === Start of file server.cmd Testnum 1436 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 132760 === End of file server.response === Start of file valgrind1436 ==133715== ==133715== Process terminating with default action of signal 4 (SIGILL) ==133715== Illegal opcode at address 0x10B06D ==133715== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133715== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1436 CMD (33792): ../libtool --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/valgrind1461 ../src/curl -q --include --trace-ascii log/1/trace1461 --trace-time --help > log/1/stdout1461 2> log/1/stderr1461 * 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/6/valgrind1462 ../src/curl -q --include --trace-ascii log/6/trace1462 --trace-time --help sdfafdsfadsfsd > log/6/stdout1462 2> log/6/stderr1462 1462: stdout FAILED: --- log/6/check-expected 2024-05-23 11:17:16.521547437 +0200 +++ log/6/check-generated 2024-05-23 11:17:16.521547437 +0200 @@ -1,26 +0,0 @@ -Usage: curl [options...] [LF] -Invalid category provided, here is a list of all categories:[LF] -[LF] - auth Different types of authentication methods[LF] - connection Low level networking operations[LF] - curl The command line tool itself[LF] - dns General DNS options[LF] - file FILE protocol options[LF] - ftp FTP protocol options[LF] - http HTTP and HTTPS protocol options[LF] - imap IMAP protocol options[LF] - misc Options that don't fit into any other category[LF] - output Filesystem output[LF] - pop3 POP3 protocol options[LF] - post HTTP Post specific options[LF] - proxy All options related to proxies[LF] - scp SCP protocol options[LF] - sftp SFTP protocol options[LF] - smtp SMTP protocol options[LF] - ssh SSH protocol options[LF] - telnet TELNET protocol options[LF] - tftp TFTP protocol options[LF] - tls All TLS/SSL related options[LF] - ech All Encrypted Client Hello (ECH) options[LF] - upload All options for uploads[LF] - verbose Options related to any kind of command line output of curl[LF] == Contents of files in the log/6/ dir after test 1462 === Start of file check-expected Usage: curl [options...] [LF] Invalid category provided, here is a list of all categories:[LF] [LF] auth Different types of authentication methods[LF] connection Low level networking operations[LF] curl The command line tool itself[LF] dns General DNS options[LF] file FILE protocol options[LF] ftp FTP protocol options[LF] http HTTP and HTTPS protocol options[LF] imap IMAP protocol options[LF] misc Options that don't fit into any other category[LF] output Filesystem output[LF] pop3 POP3 protocol options[LF] post HTTP Post specific options[LF] proxy All options related to proxies[LF] scp SCP protocol options[LF] sftp SFTP protocol options[LF] smtp SMTP protocol options[LF] ssh SSH protocol options[LF] telnet TELNET protocol options[LF] tftp TFTP protocol options[LF] tls All TLS/SSL related options[LF] ech All Encrypted Client Hello (ECH) options[LF] upload All options for uploads[LF] verbose Options related to any kind of command line output of curl[LF] === End of file check-expected === Start of file server.cmd Testnum 1462 === End of file server.cmd === Start of file valgrind1462 ==133847== ==133847== Process terminating with default action of signal 4 (SIGILL) ==133847== Illegal opcode at address 0x10B06D ==133847== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133847== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1462 CMD (33792): ../libtool --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/valgrind1463 ../src/curl -q --include --trace-ascii log/2/trace1463 --trace-time --help file > log/2/stdout1463 2> log/2/stderr1463 * starts no server test 1461...[curl important --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/1/valgrind1461 ../src/curl -q --include --trace-ascii log/1/trace1461 --trace-time --help > log/1/stdout1461 2> log/1/stderr1461 1461: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:16.528214240 +0200 +++ log/1/check-generated 2024-05-23 11:17:16.528214240 +0200 @@ -1,17 +0,0 @@ -Usage: curl [options...] [LF] - -d, --data HTTP POST data[LF] - -f, --fail Fail fast with no output on HTTP errors[LF] - -h, --help Get help for commands[LF] - -i, --include Include response headers in output[LF] - -o, --output Write to file instead of stdout[LF] - -O, --remote-name Write output to file named as remote file[LF] - -s, --silent Silent mode[LF] - -T, --upload-file Transfer local FILE to destination[LF] - -u, --user Server user and password[LF] - -A, --user-agent Send User-Agent to server[LF] - -v, --verbose Make the operation more talkative[LF] - -V, --version Show version number and quit[LF] -[LF] -This is not the full help, this menu is stripped into categories.[LF] -Use "--help category" to get an overview of all categories.[LF] -For all options use the manual or "--help all".[LF] == Contents of files in the log/1/ dir after test 1461 === Start of file check-expected Usage: curl [options...] [LF] -d, --data HTTP POST data[LF] -f, --fail Fail fast with no output on HTTP errors[LF] -h, --help Get help for commands[LF] -i, --include Include response headers in output[LF] -o, --output Write to file instead of stdout[LF] -O, --remote-name Write output to file named as remote file[LF] -s, --silent Silent mode[LF] -T, --upload-file Transfer local FILE to destination[LF] -u, --user Server user and password[LF] -A, --user-agent Send User-Agent to server[LF] -v, --verbose Make the operation more talkative[LF] -V, --version Show version number and quit[LF] [LF] This is not the full help, this menu is stripped into categories.[LF] Use "--help category" to get an overview of all categories.[LF] For all options use the manual or "--help all".[LF] === End of file check-expected === Start of file server.cmd Testnum 1461 === End of file server.cmd === Start of file valgrind1461 ==133754== ==133754== Process terminating with default action of signal 4 (SIGILL) ==133754== Illegal opcode at address 0x10B06D ==133754== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133754== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1461 CMD (33792): ../libtool --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/valgrind1464 ../src/curl -q --include --trace-ascii log/10/trace1464 --trace-time --help fIlE > log/10/stdout1464 2> log/10/stderr1464 * 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/2/valgrind1463 ../src/curl -q --include --trace-ascii log/2/trace1463 --trace-time --help file > log/2/stdout1463 2> log/2/stderr1463 1463: stdout FAILED: --- log/2/check-expected 2024-05-23 11:17:16.864887824 +0200 +++ log/2/check-generated 2024-05-23 11:17:16.864887824 +0200 @@ -1,6 +0,0 @@ -Usage: curl [options...] [LF] -file: FILE protocol options[LF] - --create-file-mode File mode for created files[LF] - -I, --head Show document info only[LF] - -l, --list-only List only mode[LF] - -r, --range Retrieve only the bytes within RANGE[LF] == Contents of files in the log/2/ dir after test 1463 === Start of file check-expected Usage: curl [options...] [LF] file: FILE protocol options[LF] --create-file-mode File mode for created files[LF] -I, --head Show document info only[LF] -l, --list-only List only mode[LF] -r, --range Retrieve only the bytes within RANGE[LF] === End of file check-expected === Start of file server.cmd Testnum 1463 === End of file server.cmd === Start of file valgrind1463 ==133944== ==133944== Process terminating with default action of signal 4 (SIGILL) ==133944== Illegal opcode at address 0x10B06D ==133944== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133944== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1463 CMD (33792): ../libtool --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/valgrind1466 ../src/curl -q --output log/8/curl1466.out --include --trace-ascii log/8/trace1466 --trace-time http://127.0.0.1:33791/1466 > log/8/stdout1466 2> log/8/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/3/valgrind1465 ../src/curl -q --output log/3/curl1465.out --include --trace-ascii log/3/trace1465 --trace-time http://127.0.0.1:46313/we/want/1465 --libcurl log/3/test1465.c --data-binary @log/3/1465-upload > log/3/stdout1465 2> log/3/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/6/valgrind1469 ../src/curl -q --output log/6/curl1469.out --include --trace-ascii log/6/trace1469 --trace-time "ftp://127.0.0.1:47/1469%/with space/" -T log/6/irrelevant-file > log/6/stdout1469 2> log/6/stderr1469 CMD (0): ../src/curl --max-time 13 --output log/11/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:45259/verifiedserver" 2>log/11/http_ipv6_verify.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/1/valgrind1471 ../src/curl -q --output log/1/curl1471.out --include --trace-ascii log/1/trace1471 --trace-time red.onion > log/1/stdout1471 2> log/1/stderr1471 * 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/10/valgrind1464 ../src/curl -q --include --trace-ascii log/10/trace1464 --trace-time --help fIlE > log/10/stdout1464 2> log/10/stderr1464 1464: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:16.874888029 +0200 +++ log/10/check-generated 2024-05-23 11:17:16.874888029 +0200 @@ -1,6 +0,0 @@ -Usage: curl [options...] [LF] -file: FILE protocol options[LF] - --create-file-mode File mode for created files[LF] - -I, --head Show document info only[LF] - -l, --list-only List only mode[LF] - -r, --range Retrieve only the bytes within RANGE[LF] == Contents of files in the log/10/ dir after test 1464 === Start of file check-expected Usage: curl [options...] [LF] file: FILE protocol options[LF] --create-file-mode File mode for created files[LF] -I, --head Show document info only[LF] -l, --list-only List only mode[LF] -r, --range Retrieve only the bytes within RANGE[LF] === End of file check-expected === Start of file server.cmd Testnum 1464 === End of file server.cmd === Start of file valgrind1464 ==133959== ==133959== Process terminating with default action of signal 4 (SIGILL) ==133959== Illegal opcode at address 0x10B06D ==133959== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==133959== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1464 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/8/valgrind1466 ../src/curl -q --output log/8/curl1466.out --include --trace-ascii log/8/trace1466 --trace-time http://127.0.0.1:33791/1466 > log/8/stdout1466 2> log/8/stderr1466 1466: 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 1466 === Start of file server.cmd Testnum 1466 === End of file server.cmd === Start of file valgrind1466 ==134049== ==134049== Process terminating with default action of signal 4 (SIGILL) ==134049== Illegal opcode at address 0x10B06D ==134049== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134049== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1466 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/3/valgrind1465 ../src/curl -q --output log/3/curl1465.out --include --trace-ascii log/3/trace1465 --trace-time http://127.0.0.1:46313/we/want/1465 --libcurl log/3/test1465.c --data-binary @log/3/1465-upload > log/3/stdout1465 2> log/3/stderr1465 1465: 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 1465 === Start of file 1465-upload abcde\"? fghi jklm === End of file 1465-upload === Start of file server.cmd Testnum 1465 === End of file server.cmd === Start of file valgrind1465 ==134023== ==134023== Process terminating with default action of signal 4 (SIGILL) ==134023== Illegal opcode at address 0x10B06D ==134023== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134023== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1465 * 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/6/valgrind1469 ../src/curl -q --output log/6/curl1469.out --include --trace-ascii log/6/trace1469 --trace-time "ftp://127.0.0.1:47/1469%/with space/" -T log/6/irrelevant-file > log/6/stdout1469 2> log/6/stderr1469 curl returned 132, when expecting 3 1469: exit FAILED == Contents of files in the log/6/ dir after test 1469 === Start of file server.cmd Testnum 1469 === End of file server.cmd === Start of file valgrind1469 ==134142== ==134142== Process terminating with default action of signal 4 (SIGILL) ==134142== Illegal opcode at address 0x10B06D ==134142== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134142== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1469 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1477.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/1/stdout1477 2> log/1/stderr1477 CMD (0): perl -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/1/stdout1478 2> log/1/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/2/valgrind1472 ../src/curl -q --output log/2/curl1472.out --include --trace-ascii log/2/trace1472 --trace-time tasty.onion. > log/2/stdout1472 2> log/2/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/1/valgrind1471 ../src/curl -q --output log/1/curl1471.out --include --trace-ascii log/1/trace1471 --trace-time red.onion > log/1/stdout1471 2> log/1/stderr1471 1471: stderr FAILED: --- log/1/check-expected 2024-05-23 11:17:17.011557502 +0200 +++ log/1/check-generated 2024-05-23 11:17:17.008224100 +0200 @@ -1 +0,0 @@ -curl: (6) Not resolving .onion address (RFC 7686)[LF] == Contents of files in the log/1/ dir after test 1471 === Start of file check-expected curl: (6) Not resolving .onion address (RFC 7686)[LF] === End of file check-expected === Start of file server.cmd Testnum 1471 === End of file server.cmd === Start of file valgrind1471 ==134147== ==134147== Process terminating with default action of signal 4 (SIGILL) ==134147== Illegal opcode at address 0x10B06D ==134147== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134147== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1471 * starts no server test 1477...[Verify that error codes in headers and libcurl-errors.3 are in sync] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1477.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/1/stdout1477 2> log/1/stderr1477 valgrind SKIPPED s------e--- OK (1272 out of 1513, remaining: 00:18, took 0.013s, duration: 01:35) * starts no server test 1478...[src/tool_listhelp.c is in sync with docs/cmdline-opts] perl -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/1/stdout1478 2> log/1/stderr1478 valgrind SKIPPED s------e--- OK (1273 out of 1513, remaining: 00:17, took 0.038s, duration: 01: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/8/valgrind1474 ../src/curl -q --output log/8/curl1474.out --include --trace-ascii log/8/trace1474 --trace-time --proto -all http://127.0.0.1:47/1474 > log/8/stdout1474 2> log/8/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/10/valgrind1473 ../src/curl -q --output log/10/curl1473.out --include --trace-ascii log/10/trace1473 --trace-time http://127.0.0.1:36145/1473 > log/10/stdout1473 2> log/10/stderr1473 CMD (33792): ../libtool --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/valgrind1475 ../src/curl -q --output log/3/curl1475.out --include --trace-ascii log/3/trace1475 --trace-time http://127.0.0.1:46313/1475 -C - -f > log/3/stdout1475 2> log/3/stderr1475 RUN: Process with pid 75083 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/6/valgrind1476 ../src/curl -q --output log/6/curl1476.out --include --trace-ascii log/6/trace1476 --trace-time -x http://127.0.0.1:42657/1476 http://curl.co.UK -c log/6/cookies1476.txt > log/6/stdout1476 2> log/6/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/11/valgrind1456 ../src/curl -q --output log/11/curl1456.out --include --trace-ascii log/11/trace1456 --trace-time -g "http://[::1]:45259/1456" --haproxy-protocol > log/11/stdout1456 2> log/11/stderr1456 CMD (33792): ../libtool --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/valgrind1479 ../src/curl -q --output log/1/curl1479.out --include --trace-ascii log/1/trace1479 --trace-time http://127.0.0.1:39283/1479 http://127.0.0.1:39283/14790002 > log/1/stdout1479 2> log/1/stderr1479 * 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/2/valgrind1472 ../src/curl -q --output log/2/curl1472.out --include --trace-ascii log/2/trace1472 --trace-time tasty.onion. > log/2/stdout1472 2> log/2/stderr1472 1472: stderr FAILED: --- log/2/check-expected 2024-05-23 11:17:17.321563870 +0200 +++ log/2/check-generated 2024-05-23 11:17:17.321563870 +0200 @@ -1 +0,0 @@ -curl: (6) Not resolving .onion address (RFC 7686)[LF] == Contents of files in the log/2/ dir after test 1472 === Start of file check-expected curl: (6) Not resolving .onion address (RFC 7686)[LF] === End of file check-expected === Start of file server.cmd Testnum 1472 === End of file server.cmd === Start of file valgrind1472 ==134245== ==134245== Process terminating with default action of signal 4 (SIGILL) ==134245== Illegal opcode at address 0x10B06D ==134245== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134245== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1472 * 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/8/valgrind1474 ../src/curl -q --output log/8/curl1474.out --include --trace-ascii log/8/trace1474 --trace-time --proto -all http://127.0.0.1:47/1474 > log/8/stdout1474 2> log/8/stderr1474 curl returned 132, when expecting 1 1474: exit FAILED == Contents of files in the log/8/ dir after test 1474 === Start of file server.cmd Testnum 1474 === End of file server.cmd === Start of file valgrind1474 ==134268== ==134268== Process terminating with default action of signal 4 (SIGILL) ==134268== Illegal opcode at address 0x10B06D ==134268== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134268== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1474 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/10/valgrind1473 ../src/curl -q --output log/10/curl1473.out --include --trace-ascii log/10/trace1473 --trace-time http://127.0.0.1:36145/1473 > log/10/stdout1473 2> log/10/stderr1473 1473: 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 1473 === Start of file server.cmd Testnum 1473 === End of file server.cmd === Start of file valgrind1473 ==134269== ==134269== Process terminating with default action of signal 4 (SIGILL) ==134269== Illegal opcode at address 0x10B06D ==134269== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134269== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1473 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/6/valgrind1476 ../src/curl -q --output log/6/curl1476.out --include --trace-ascii log/6/trace1476 --trace-time -x http://127.0.0.1:42657/1476 http://curl.co.UK -c log/6/cookies1476.txt > log/6/stdout1476 2> log/6/stderr1476 1476: 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 1476 === Start of file server.cmd Testnum 1476 === End of file server.cmd === Start of file valgrind1476 ==134437== ==134437== Process terminating with default action of signal 4 (SIGILL) ==134437== Illegal opcode at address 0x10B06D ==134437== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134437== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1476 startnew: perl -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: ../src/curl --max-time 13 --output log/11/http_ipv6_verify.out --silent --verbose --globoff "http://[::1]:45259/verifiedserver" 2>log/11/http_ipv6_verify.log RUN: HTTP-IPv6 server is on PID 133614 port 45259 * pid http-ipv6 => 133614 133614 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/11/valgrind1456 ../src/curl -q --output log/11/curl1456.out --include --trace-ascii log/11/trace1456 --trace-time -g "http://[::1]:45259/1456" --haproxy-protocol > log/11/stdout1456 2> log/11/stderr1456 1456: 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 1456 === Start of file http_ipv6_server.log 11:17:15.502396 Running HTTP IPv6 version on port 45259 11:17:15.502472 Wrote pid 133614 to log/11/server/http_ipv6_server.pid 11:17:15.502495 Wrote port 45259 to log/11/server/http_ipv6_server.port 11:17:16.504521 ====> Client connect 11:17:16.504537 accept_connection 3 returned 4 11:17:16.504547 accept_connection 3 returned 0 11:17:16.504557 Read 88 bytes 11:17:16.504563 Process 88 bytes request 11:17:16.504577 Got request: GET /verifiedserver HTTP/1.1 11:17:16.504583 Are-we-friendly question received 11:17:16.504598 Wrote request (88 bytes) input to log/11/server.input 11:17:16.504613 Identifying ourselves as friends 11:17:16.504657 Response sent (57 bytes) and written to log/11/server.response 11:17:16.504663 special request received, no persistency 11:17:16.504668 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:45259... * Connected to ::1 (::1) port 45259 > GET /verifiedserver HTTP/1.1 > Host: [::1]:45259 > User-Agent: curl/8.8.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: 133614 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 1456 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 133614 === End of file server.response === Start of file valgrind1456 ==134502== ==134502== Process terminating with default action of signal 4 (SIGILL) ==134502== Illegal opcode at address 0x10B06D ==134502== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134502== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1456 test 1479...[HTTP/1.1 response 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/1/valgrind1479 ../src/curl -q --output log/1/curl1479.out --include --trace-ascii log/1/trace1479 --trace-time http://127.0.0.1:39283/1479 http://127.0.0.1:39283/14790002 > log/1/stdout1479 2> log/1/stderr1479 1479: 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 1479 === Start of file server.cmd Testnum 1479 === End of file server.cmd === Start of file valgrind1479 ==134559== ==134559== Process terminating with default action of signal 4 (SIGILL) ==134559== Illegal opcode at address 0x10B06D ==134559== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134559== by 0x10CMD (33792): ../libtool --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/valgrind1482 ../src/curl -q --output log/10/curl1482.out --include --trace-ascii log/10/trace1482 --trace-time http://127.0.0.1:36145/1482 -D log/10/heads1482 > log/10/stdout1482 2> log/10/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/2/valgrind1480 ../src/curl -q --output log/2/curl1480.out --include --trace-ascii log/2/trace1480 --trace-time http://127.0.0.1:44205/1480 > log/2/stdout1480 2> log/2/stderr1480 CMD (33792): ../libtool --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/valgrind1481 ../src/curl -q --output log/8/curl1481.out --include --trace-ascii log/8/trace1481 --trace-time http://moo/ --libcurl log/8/test1481.c --tls-max 1.3 --proxy-tlsv1 -x http://127.0.0.1:33791 > log/8/stdout1481 2> log/8/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/6/valgrind1483 ../src/curl -q --output log/6/curl1483.out --include --trace-ascii log/6/trace1483 --trace-time http://127.0.0.1:42657/1483 -D log/6/heads1483 > log/6/stdout1483 2> log/6/stderr1483 CMD (33792): ../libtool --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/valgrind1467 ../src/curl -q --output log/7/curl1467.out --include --trace-ascii log/7/trace1467 --trace-time --socks5 localhost/tmp/curl-socksd-a1ESbBrL http://127.0.0.1:35853/1467 > log/7/stdout1467 2> log/7/stderr1467 CMD (33792): ../libtool --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/valgrind1468 ../src/curl -q --output log/9/curl1468.out --include --trace-ascii log/9/trace1468 --trace-time http://this.is.a.host.name:40247/1468 --proxy socks5h://localhost/tmp/curl-socksd-dcecXzQN > log/9/stdout1468 2> log/9/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/11/valgrind1500 ./libtest/lib1500 http://127.0.0.1:35843/1500 > log/11/stdout1500 2> log/11/stderr1500 B06D: main (tool_main.c:234) === End of file valgrind1479 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/10/valgrind1482 ../src/curl -q --output log/10/curl1482.out --include --trace-ascii log/10/trace1482 --trace-time http://127.0.0.1:36145/1482 -D log/10/heads1482 > log/10/stdout1482 2> log/10/stderr1482 1482: 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 1482 === Start of file server.cmd writedelay: 10 Testnum 1482 === End of file server.cmd === Start of file valgrind1482 ==134616== ==134616== Process terminating with default action of signal 4 (SIGILL) ==134616== Illegal opcode at address 0x10B06D ==134616== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134616== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1482 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/2/valgrind1480 ../src/curl -q --output log/2/curl1480.out --include --trace-ascii log/2/trace1480 --trace-time http://127.0.0.1:44205/1480 > log/2/stdout1480 2> log/2/stderr1480 1480: 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 1480 === Start of file server.cmd Testnum 1480 === End of file server.cmd === Start of file valgrind1480 ==134612== ==134612== Process terminating with default action of signal 4 (SIGILL) ==134612== Illegal opcode at address 0x10B06D ==134612== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134612== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1480 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/8/valgrind1481 ../src/curl -q --output log/8/curl1481.out --include --trace-ascii log/8/trace1481 --trace-time http://moo/ --libcurl log/8/test1481.c --tls-max 1.3 --proxy-tlsv1 -x http://127.0.0.1:33791 > log/8/stdout1481 2> log/8/stderr1481 1481: 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 1481 === Start of file server.cmd Testnum 1481 === End of file server.cmd === Start of file valgrind1481 ==134639== ==134639== Process terminating with default action of signal 4 (SIGILL) ==134639== Illegal opcode at address 0x10B06D ==134639== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134639== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1481 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/6/valgrind1483 ../src/curl -q --output log/6/curl1483.out --include --trace-ascii log/6/trace1483 --trace-time http://127.0.0.1:42657/1483 -D log/6/heads1483 > log/6/stdout1483 2> log/6/stderr1483 1483: 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 1483 === Start of file server.cmd writedelay: 10 Testnum 1483 === End of file server.cmd === Start of file valgrind1483 ==134757== ==134757== Process terminating with default action of signal 4 (SIGILL) ==134757== Illegal opcode at address 0x10B06D ==134757== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134757== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1483 startnew: server/socksd --pidfile log/7/server/socks2_server.pid --reqfile log/7/socksd-request.log --logfile log/7/socks2_server.log --unix-socket /tmp/curl-socksd-a1ESbBrL --backend 127.0.0.1 --config log/7/server.cmd RUN: SOCKS2 server is now running PID 134078 * pid socks5unix => 134078 134078 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/7/valgrind1467 ../src/curl -q --output log/7/curl1467.out --include --trace-ascii log/7/trace1467 --trace-time --socks5 localhost/tmp/curl-socksd-a1ESbBrL http://127.0.0.1:35853/1467 > log/7/stdout1467 2> log/7/stderr1467 1467: 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 1467 === Start of file server.cmd Testnum 1467 === End of file server.cmd === Start of file socks2_server.log 11:17:16.009826 Running unix version 11:17:16.009895 Listening on unix socket /tmp/curl-socksd-a1ESbBrL 11:17:16.009922 Wrote pid 134078 to log/7/server/socks2_server.pid === End of file socks2_server.log === Start of file valgrind1467 ==134829== ==134829== Process terminating with default action of signal 4 (SIGILL) ==134829== Illegal opcode at address 0x10B06D ==134829== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134829== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1467 startnew: server/socksd --pidfile log/9/server/socks2_server.pid --reqfile log/9/socksd-request.log --logfile log/9/socks2_server.log --unix-socket /tmp/curl-socksd-dcecXzQN --backend 127.0.0.1 --config log/9/server.cmd RUN: SOCKS2 server is now running PID 134124 * pid socks5unix => 134124 134124 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/9/valgrind1468 ../src/curl -q --output log/9/curl1468.out --include --trace-ascii log/9/trace1468 --trace-time http://this.is.a.host.name:40247/1468 --proxy socks5h://localhost/tmp/curl-socksd-dcecXzQN > log/9/stdout1468 2> log/9/stderr1468 1468: 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 1468 === Start of file server.cmd Testnum 1468 === End of file server.cmd === Start of file socks2_server.log 11:17:16.024236 Running unix version 11:17:16.024292 Listening on unix socket /tmp/curl-socksd-dcecXzQN 11:17:16.024319 Wrote pid 134124 to log/9/server/socks2_server.pid === End of file socks2_server.log === Start of file valgrind1468 ==134880== ==134880== Process terminating with default action of signal 4 (SIGILL) ==134880== Illegal opcode at address 0x10B06D ==134880== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134880== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1468 CMD (33792): ../libtool --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/valgrind1501 ./libtest/lib1501 ftp://127.0.0.1:35701/1501/ > log/1/stdout1501 2> log/1/stderr1501 * kill pid for ftp-ctrl => 80054 RUN: Process with pid 79941 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/7/valgrind1506 ./libtest/lib1506 http://127.0.0.1:35853/path/1506 127.0.0.1 35853 > log/7/stdout1506 2> log/7/stderr1506 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/11/valgrind1500 ./libtest/lib1500 http://127.0.0.1:35843/1500 > log/11/stdout1500 2> log/11/stderr1500 1500: data FAILED: --- log/11/check-expected 2024-05-23 11:17:18.368252037 +0200 +++ log/11/check-generated 2024-05-23 11:17:18.368252037 +0200 @@ -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/11/ 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 server.cmd Testnum 1500 === End of file server.cmd === Start of file stderr1500 URL: http://127.0.0.1:35843/1500 === End of file stderr1500 === Start of file valgrind1500 ==134808== ==134808== Process terminating with default action of signal 4 (SIGILL) ==134808== Illegal opcode at address 0x48DC18B ==134808== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==134808== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==134808== by 0x48DC18B: Curl_open (url.c:519) ==134808== by 0x487CCEF: curl_easy_init (easy.c:368) ==134808== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==134808== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==134808== by 0x1090B2: UnknownInlinedFun (lib1500.c:45) ==134808== by 0x1090B2: UnknownInlinedFun (lib1500.c:32) ==134808== by 0x1090B2: main (first.c:178) ==134808== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==134808== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134808== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134808== by 0x4A58EC8: tsearch (tsearch.c:290) ==134808== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134808== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134808== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134808== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134808== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==134808== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==134808== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134808== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134808== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134808== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134808== by 0x497836B: setlocale (setlocale.c:337) ==134808== by 0x109059: main (first.c:157) ==134808== ==134808== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==134808== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134808== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134808== by 0x4A58EC8: tsearch (tsearch.c:290) ==134808== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134808== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==134808== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==134808== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134808== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134808== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134808== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134808== by 0x497836B: setlocale (setlocale.c:337) ==134808== by 0x109059: main (first.c:157) ==134808== ==134808== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==134808== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134808== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134808== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134808== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134808== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134808== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==134808== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==134808== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134808== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134808== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134808== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134808== by 0x497836B: setlocale (setlocale.c:337) ==134808== by 0x109059: main (first.c:157) ==134808== ==134808== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==134808== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134808== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134808== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==134808== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==134808== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134808== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134808== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134808== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134808== by 0x497836B: setlocale (setlocale.c:337) ==134808== by 0x109059: main (first.c:157) ==134808== ==134808== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==134808== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==134808== by 0x48DC163: Curl_open (url.c:510) ==134808== by 0x487CCEF: curl_easy_init (easy.c:368) ==134808== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==134808== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==134808== by 0x1090B2: UnknownInlinedFun (lib1500.c:45) ==134808== by 0x1090B2: UnknownInlinedFun (lib1500.c:32) ==134808== by 0x1090B2: main (first.c:178) ==134808== ==134808== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==134808== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134808== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134808== by 0x4A58EC8: tsearch (tsearch.c:290) ==134808== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134808== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134808== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134808== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134808== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==134808== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==134808== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134808== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134808== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134808== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134808== by 0x497836B: setlocale (setlocale.c:337) ==134808== by 0x109059: main (first.c:157) ==134808== ==134808== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==134808== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134808== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134808== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134808== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134808== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134808== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==134808== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==134808== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134808== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134808== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134808== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134808== by 0x497836B: setlocale (setlocale.c:337) ==134808== by 0x109059: main (first.c:157) ==134808== === End of file valgrind1500 test 1506...[HTTP GET connection cache limit (CURLMOPT_MAXCONNECTS)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheCMD (33792): ../libtool --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/valgrind1504 ./libtest/lib1504 http://google.com:33791/1504 33791 127.0.0.1 > log/8/stdout1504 2> log/8/stderr1504 ck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1506 ./libtest/lib1506 http://127.0.0.1:35853/path/1506 127.0.0.1 35853 > 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 server.cmd Testnum 1506 === End of file server.cmd === Start of file stderr1506 URL: http://127.0.0.1:35853/path/1506 === End of file stderr1506 === Start of file valgrind1506 ==135192== ==135192== Process terminating with default action of signal 4 (SIGILL) ==135192== Illegal opcode at address 0x490F48E ==135192== at 0x490F48E: formatf.constprop.3 (mprintf.c:795) ==135192== by 0x48B28BA: curl_mvsnprintf (mprintf.c:1061) ==135192== by 0x48B299B: curl_msnprintf (mprintf.c:1081) ==135192== by 0x109313: test.isra.0 (lib1506.c:51) ==135192== by 0x109092: main (first.c:178) ==135192== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==135192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135192== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135192== by 0x4A58EC8: tsearch (tsearch.c:290) ==135192== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135192== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135192== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135192== by 0x497836B: setlocale (setlocale.c:337) ==135192== by 0x109047: main (first.c:157) ==135192== ==135192== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==135192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135192== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135192== by 0x4A58EC8: tsearch (tsearch.c:290) ==135192== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135192== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135192== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135192== by 0x497836B: setlocale (setlocale.c:337) ==135192== by 0x109047: main (first.c:157) ==135192== ==135192== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==135192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135192== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135192== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135192== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135192== by 0x497836B: setlocale (setlocale.c:337) ==135192== by 0x109047: main (first.c:157) ==135192== ==135192== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==135192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135192== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135192== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135192== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135192== by 0x497836B: setlocale (setlocale.c:337) ==135192== by 0x109047: main (first.c:157) ==135192== ==135192== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==135192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135192== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135192== by 0x4A58EC8: tsearch (tsearch.c:290) ==135192== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135192== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135192== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135192== by 0x497836B: setlocale (setlocale.c:337) ==135192== by 0x109047: main (first.c:157) ==135192== ==135192== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==135192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135192== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135192== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135192== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135192== by 0x497836B: setlocale (setlocale.c:337) ==135192== by 0x109047: main (first.c:157) ==135192== === End of file valgrind1506 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/8/valgrind1504 ./libtest/lib1504 http://google.com:33791/1504 33791 127.0.0.1 > log/8/stdout1504 2> log/8/stderr1504 1504: 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 1504 === Start of file server.cmd Testnum 1504 === End of file server.cmd === Start of file stderr1504 URL: http://google.com:33791/1504 === End of file stderr1504 === Start of file valgrind1504 ==135047== ==135047== Process terminating with default action of signal 4 (SIGILL) ==135047== Illegal opcode at address 0x48DC18B ==135047== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135047== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135047== by 0x48DC18B: Curl_open (url.c:519) ==135047== by 0x487CCEF: curl_easy_init (easy.c:368) ==135047== by 0x109348: test.part.0 (lib1502.c:72) ==135047== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==135047== by 0x1090AD: main (first.c:178) ==135047== 408 bytes in 17 blocks are possibly lost in loss record 602 of 652 ==135047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135047== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135047== by 0x4A58EC8: tsearch (tsearch.c:290) ==135047== by 0x496C6B7CMD (33792): ../libtool --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/valgrind1502 ./libtest/lib1502 http://google.com:36145/1502 36145 127.0.0.1 > log/10/stdout1502 2> log/10/stderr1502 : add_alias2.part.0 (gconv_conf.c:142) ==135047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135047== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135047== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135047== by 0x497836B: setlocale (setlocale.c:337) ==135047== by 0x109047: main (first.c:157) ==135047== ==135047== 552 bytes in 23 blocks are possibly lost in loss record 607 of 652 ==135047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135047== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135047== by 0x4A58EC8: tsearch (tsearch.c:290) ==135047== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135047== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135047== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135047== by 0x497836B: setlocale (setlocale.c:337) ==135047== by 0x109047: main (first.c:157) ==135047== ==135047== 681 bytes in 17 blocks are possibly lost in loss record 613 of 652 ==135047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135047== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135047== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135047== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135047== by 0x497836B: setlocale (setlocale.c:337) ==135047== by 0x109047: main (first.c:157) ==135047== ==135047== 1,018 bytes in 23 blocks are possibly lost in loss record 627 of 652 ==135047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135047== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135047== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135047== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135047== by 0x497836B: setlocale (setlocale.c:337) ==135047== by 0x109047: main (first.c:157) ==135047== ==135047== 5,288 bytes in 1 blocks are definitely lost in loss record 646 of 652 ==135047== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135047== by 0x48DC163: Curl_open (url.c:510) ==135047== by 0x487CCEF: curl_easy_init (easy.c:368) ==135047== by 0x109348: test.part.0 (lib1502.c:72) ==135047== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==135047== by 0x1090AD: main (first.c:178) ==135047== ==135047== 11,664 bytes in 486 blocks are possibly lost in loss record 649 of 652 ==135047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135047== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135047== by 0x4A58EC8: tsearch (tsearch.c:290) ==135047== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135047== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135047== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135047== by 0x497836B: setlocale (setlocale.c:337) ==135047== by 0x109047: main (first.c:157) ==135047== ==135047== 18,800 bytes in 486 blocks are possibly lost in loss record 651 of 652 ==135047== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135047== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135047== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135047== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135047== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135047== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135047== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135047== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135047== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135047== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135047== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135047== by 0x497836B: setlocale (setlocale.c:337) ==135047== by 0x109047: main (first.c:157) ==135047== === 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/10/valgrind1502 ./libtest/lib1502 http://google.com:36145/1502 36145 127.0.0.1 > log/10/stdout1502 2> log/10/stderr1502 1502: 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 1502 === Start of file server.cmd Testnum 1502 === End of file server.cmd === Start of file stderr1502 URL: http://google.com:36145/1502 === End of file stderr1502 === Start of file valgrind1502 ==134999== ==134999== Process terminating with default action of signal 4 (SIGILL) ==134999== Illegal opcode at address 0x48DC18B ==134999== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==134999== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==134999== by 0x48DC18B: Curl_open (url.c:519) ==134999== by 0x487CCEF: curl_easy_init (easy.c:368) ==134999== by 0x109348: test.part.0 (lib1502.c:72) ==134999== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==134999== by 0x1090AD: main (first.c:178) ==134999== 408 bytes in 17 blocks are possibly lost in loss record 602 of 652 ==134999== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134999== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134999== by 0x4A58EC8: tsearch (tsearch.c:290) ==134999== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134999== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134999== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134999== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134999== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==134999== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==134999== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134999== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134999== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134999== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134999== by 0x497836B: setlocale (setlocale.c:337) ==134999== by 0x109047: main (first.c:157) ==134999== ==134999== 552 bytes in 23 blocks are possibly lost in loss record 607 of 652 ==134999== at 0x4CMD (33792): ../libtool --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/valgrind1503 ./libtest/lib1503 http://google.com:44205/1503 44205 127.0.0.1 > log/2/stdout1503 2> log/2/stderr1503 842788: malloc (vg_replace_malloc.c:446) ==134999== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134999== by 0x4A58EC8: tsearch (tsearch.c:290) ==134999== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134999== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==134999== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==134999== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134999== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134999== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134999== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134999== by 0x497836B: setlocale (setlocale.c:337) ==134999== by 0x109047: main (first.c:157) ==134999== ==134999== 681 bytes in 17 blocks are possibly lost in loss record 613 of 652 ==134999== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134999== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134999== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134999== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134999== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134999== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==134999== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==134999== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134999== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134999== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134999== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134999== by 0x497836B: setlocale (setlocale.c:337) ==134999== by 0x109047: main (first.c:157) ==134999== ==134999== 1,018 bytes in 23 blocks are possibly lost in loss record 627 of 652 ==134999== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134999== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134999== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==134999== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==134999== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134999== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134999== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134999== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134999== by 0x497836B: setlocale (setlocale.c:337) ==134999== by 0x109047: main (first.c:157) ==134999== ==134999== 5,288 bytes in 1 blocks are definitely lost in loss record 646 of 652 ==134999== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==134999== by 0x48DC163: Curl_open (url.c:510) ==134999== by 0x487CCEF: curl_easy_init (easy.c:368) ==134999== by 0x109348: test.part.0 (lib1502.c:72) ==134999== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==134999== by 0x1090AD: main (first.c:178) ==134999== ==134999== 11,664 bytes in 486 blocks are possibly lost in loss record 649 of 652 ==134999== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134999== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134999== by 0x4A58EC8: tsearch (tsearch.c:290) ==134999== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134999== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134999== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134999== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134999== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==134999== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==134999== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134999== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134999== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134999== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134999== by 0x497836B: setlocale (setlocale.c:337) ==134999== by 0x109047: main (first.c:157) ==134999== ==134999== 18,800 bytes in 486 blocks are possibly lost in loss record 651 of 652 ==134999== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134999== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134999== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134999== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134999== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134999== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==134999== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==134999== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134999== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134999== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134999== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134999== by 0x497836B: setlocale (setlocale.c:337) ==134999== by 0x109047: main (first.c:157) ==134999== === End of file valgrind1502 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/2/valgrind1503 ./libtest/lib1503 http://google.com:44205/1503 44205 127.0.0.1 > log/2/stdout1503 2> log/2/stderr1503 1503: 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 1503 === Start of file server.cmd Testnum 1503 === End of file server.cmd === Start of file stderr1503 URL: http://google.com:44205/1503 === End of file stderr1503 === Start of file valgrind1503 ==135004== ==135004== Process terminating with default action of signal 4 (SIGILL) ==135004== Illegal opcode at address 0x48DC18B ==135004== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135004== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135004== by 0x48DC18B: Curl_open (url.c:519) ==135004== by 0x487CCEF: curl_easy_init (easy.c:368) ==135004== by 0x109348: test.part.0 (lib1502.c:72) ==135004== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==135004== by 0x1090AD: main (first.c:178) ==135004== 408 bytes in 17 blocks are possibly lost in loss record 602 of 652 ==135004== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135004== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135004== by 0x4A58EC8: tsearch (tsearch.c:290) ==135004== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135004== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135004== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135004== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135004== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135004== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135004== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135004== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135004== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135004== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135004== by 0x497836B: setlocale (setlocale.c:337) ==135004== by 0x109047: main (first.c:157) ==135004== ==135004== 552 bytes in 23 blocks are possibly lost in loss record 607 of 652 ==135004== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135004== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135004== by 0x4A58EC8: tsearch (tsearch.c:290) ==135004== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135004== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135004== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135004== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135004== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135004== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135004== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135004== by 0x497836B: setlocale (setlocale.c:337) ==135004== by 0x109047: main (first.c:157) ==135004== ==135004== 681 bytes in 17 blocks are possibly lost in loss record 613 of 652 ==135004== at 0x4842788: 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/6/valgrind1505 ./libtest/lib1505 http://google.com:42657/1505 42657 127.0.0.1 > log/6/stdout1505 2> log/6/stderr1505 ==135004== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135004== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135004== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135004== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135004== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135004== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135004== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135004== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135004== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135004== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135004== by 0x497836B: setlocale (setlocale.c:337) ==135004== by 0x109047: main (first.c:157) ==135004== ==135004== 1,018 bytes in 23 blocks are possibly lost in loss record 627 of 652 ==135004== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135004== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135004== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135004== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135004== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135004== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135004== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135004== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135004== by 0x497836B: setlocale (setlocale.c:337) ==135004== by 0x109047: main (first.c:157) ==135004== ==135004== 5,288 bytes in 1 blocks are definitely lost in loss record 646 of 652 ==135004== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135004== by 0x48DC163: Curl_open (url.c:510) ==135004== by 0x487CCEF: curl_easy_init (easy.c:368) ==135004== by 0x109348: test.part.0 (lib1502.c:72) ==135004== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==135004== by 0x1090AD: main (first.c:178) ==135004== ==135004== 11,664 bytes in 486 blocks are possibly lost in loss record 649 of 652 ==135004== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135004== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135004== by 0x4A58EC8: tsearch (tsearch.c:290) ==135004== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135004== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135004== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135004== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135004== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135004== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135004== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135004== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135004== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135004== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135004== by 0x497836B: setlocale (setlocale.c:337) ==135004== by 0x109047: main (first.c:157) ==135004== ==135004== 18,800 bytes in 486 blocks are possibly lost in loss record 651 of 652 ==135004== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135004== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135004== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135004== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135004== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135004== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135004== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135004== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135004== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135004== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135004== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135004== by 0x497836B: setlocale (setlocale.c:337) ==135004== by 0x109047: main (first.c:157) ==135004== === End of file valgrind1503 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/6/valgrind1505 ./libtest/lib1505 http://google.com:42657/1505 42657 127.0.0.1 > log/6/stdout1505 2> log/6/stderr1505 1505: 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 1505 === Start of file server.cmd Testnum 1505 === End of file server.cmd === Start of file stderr1505 URL: http://google.com:42657/1505 === End of file stderr1505 === Start of file valgrind1505 ==135140== ==135140== Process terminating with default action of signal 4 (SIGILL) ==135140== Illegal opcode at address 0x48DC18B ==135140== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135140== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135140== by 0x48DC18B: Curl_open (url.c:519) ==135140== by 0x487CCEF: curl_easy_init (easy.c:368) ==135140== by 0x109348: test.part.0 (lib1502.c:72) ==135140== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==135140== by 0x1090AD: main (first.c:178) ==135140== 408 bytes in 17 blocks are possibly lost in loss record 602 of 652 ==135140== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135140== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135140== by 0x4A58EC8: tsearch (tsearch.c:290) ==135140== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135140== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135140== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135140== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135140== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135140== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135140== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135140== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135140== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135140== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135140== by 0x497836B: setlocale (setlocale.c:337) ==135140== by 0x109047: main (first.c:157) ==135140== ==135140== 552 bytes in 23 blocks are possibly lost in loss record 607 of 652 ==135140== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135140== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135140== by 0x4A58EC8: tsearch (tsearch.c:290) ==135140== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135140== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135140== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135140== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135140== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135140== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135140== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135140== by 0x497836B: setlocale (setlocale.c:337) ==135140== by 0x109047: main (first.c:157) ==135140== ==135140== 681 bytes in 17 blocks are possibly lost in loss record 613 of 652 ==135140== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135140== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135140== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135140== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135140== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135140== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135140== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135140== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135140== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135140== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135140== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135140== by 0x497836B: setlocale (setlocale.c:337) ==135140== by 0x109047: main (first.c:157) ==135140== ==135140== 1,018 bytes in 23 blocks are possibly lost in loss record 627 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/valgrind1507 ./libtest/lib1507 smtp://127.0.0.1:39915/1507 log/9/stdout1507 2> log/9/stderr1507 652 ==135140== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135140== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135140== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135140== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135140== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135140== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135140== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135140== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135140== by 0x497836B: setlocale (setlocale.c:337) ==135140== by 0x109047: main (first.c:157) ==135140== ==135140== 5,288 bytes in 1 blocks are definitely lost in loss record 646 of 652 ==135140== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135140== by 0x48DC163: Curl_open (url.c:510) ==135140== by 0x487CCEF: curl_easy_init (easy.c:368) ==135140== by 0x109348: test.part.0 (lib1502.c:72) ==135140== by 0x1090AD: UnknownInlinedFun (lib1502.c:55) ==135140== by 0x1090AD: main (first.c:178) ==135140== ==135140== 11,664 bytes in 486 blocks are possibly lost in loss record 649 of 652 ==135140== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135140== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135140== by 0x4A58EC8: tsearch (tsearch.c:290) ==135140== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135140== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135140== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135140== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135140== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135140== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135140== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135140== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135140== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135140== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135140== by 0x497836B: setlocale (setlocale.c:337) ==135140== by 0x109047: main (first.c:157) ==135140== ==135140== 18,800 bytes in 486 blocks are possibly lost in loss record 651 of 652 ==135140== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135140== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135140== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135140== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135140== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135140== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135140== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135140== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135140== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135140== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135140== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135140== by 0x497836B: setlocale (setlocale.c:337) ==135140== by 0x109047: main (first.c:157) ==135140== === End of file valgrind1505 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/9/valgrind1507 ./libtest/lib1507 smtp://127.0.0.1:39915/1507 log/9/stdout1507 2> log/9/stderr1507 1507: 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 1507 === Start of file server.cmd Testnum 1507 === End of file server.cmd === Start of file stderr1507 URL: smtp://127.0.0.1:39915/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 ==135206== ==135206== Process terminating with default action of signal 4 (SIGILL) ==135206== Illegal opcode at address 0x48DC18B ==135206== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135206== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135206== by 0x48DC18B: Curl_open (url.c:519) ==135206== by 0x487CCEF: curl_easy_init (easy.c:368) ==135206== by 0x109227: test (lib1507.c:61) ==135206== by 0x109076: main (first.c:178) ==135206== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135206== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135206== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135206== by 0x4A58EC8: tsearch (tsearch.c:290) ==135206== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135206== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135206== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135206== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135206== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135206== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135206== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135206== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135206== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135206== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135206== by 0x497836B: setlocale (setlocale.c:337) ==135206== by 0x109047: main (first.c:157) ==135206== ==135206== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135206== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135206== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135206== by 0x4A58EC8: tsearch (tsearch.c:290) ==135206== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135206== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135206== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135206== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135206== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135206== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135206== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135206== by 0x497836B: setlocale (setlocale.c:337) ==135206== by 0x109047: main (first.c:157) ==135206== ==135206== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135206== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135206== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135206== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135206== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135206== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135206== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135206== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135206== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135206== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135206== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135206== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135206== by 0x497836B: setlocale (setlocale.c:337) ==135206== by 0x109047: main (first.c:157) ==135206== ==135206== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135206== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135206== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135206== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135206== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135206== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135206== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135206== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135206== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135206== by 0x497836B: setlocale (setlocale.c:337) ==135206== by 0x109047: main (first.c:157) ==135206== ==135206== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135206== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135206== by 0x48DC163: Curl_open CMD (33792): ../libtool --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/valgrind1508 ./libtest/lib1508 http://127.0.0.1:47/path/1508 > log/11/stdout1508 2> log/11/stderr1508 (url.c:510) ==135206== by 0x487CCEF: curl_easy_init (easy.c:368) ==135206== by 0x109227: test (lib1507.c:61) ==135206== by 0x109076: main (first.c:178) ==135206== ==135206== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135206== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135206== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135206== by 0x4A58EC8: tsearch (tsearch.c:290) ==135206== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135206== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135206== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135206== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135206== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135206== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135206== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135206== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135206== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135206== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135206== by 0x497836B: setlocale (setlocale.c:337) ==135206== by 0x109047: main (first.c:157) ==135206== ==135206== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135206== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135206== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135206== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135206== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135206== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135206== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135206== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135206== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135206== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135206== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135206== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135206== by 0x497836B: setlocale (setlocale.c:337) ==135206== by 0x109047: main (first.c:157) ==135206== === End of file valgrind1507 CMD (33792): ../libtool --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/valgrind1511 ./libtest/lib1511 http://127.0.0.1:33791/1511 > log/8/stdout1511 2> log/8/stderr1511 * 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/11/valgrind1508 ./libtest/lib1508 http://127.0.0.1:47/path/1508 > log/11/stdout1508 2> log/11/stderr1508 1508: output (log/11/stdout1508) FAILED: --- log/11/check-expected 2024-05-23 11:17:19.231603106 +0200 +++ log/11/check-generated 2024-05-23 11:17:19.231603106 +0200 @@ -1 +0,0 @@ -We are done[LF] == Contents of files in the log/11/ dir after test 1508 === Start of file check-expected We are done[LF] === End of file check-expected === 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 ==135300== ==135300== Process terminating with default action of signal 4 (SIGILL) ==135300== Illegal opcode at address 0x48DC18B ==135300== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135300== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135300== by 0x48DC18B: Curl_open (url.c:519) ==135300== by 0x487CCEF: curl_easy_init (easy.c:368) ==135300== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==135300== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==135300== by 0x109086: UnknownInlinedFun (lib1508.c:39) ==135300== by 0x109086: UnknownInlinedFun (lib1508.c:30) ==135300== by 0x109086: main (first.c:178) ==135300== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==135300== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135300== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135300== by 0x4A58EC8: tsearch (tsearch.c:290) ==135300== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135300== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135300== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135300== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135300== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135300== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135300== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135300== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135300== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135300== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135300== by 0x497836B: setlocale (setlocale.c:337) ==135300== by 0x109047: main (first.c:157) ==135300== ==135300== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==135300== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135300== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135300== by 0x4A58EC8: tsearch (tsearch.c:290) ==135300== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135300== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135300== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135300== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135300== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135300== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135300== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135300== by 0x497836B: setlocale (setlocale.c:337) ==135300== by 0x109047: main (first.c:157) ==135300== ==135300== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==135300== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135300== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135300== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135300== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135300== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135300== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135300== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135300== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135300== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135300== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135300== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135300== by 0x497836B: setlocale (setlocale.c:337) ==135300== by 0x109047: main (first.c:157) ==135300== ==135300== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==135300== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135300== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135300== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135300== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135300== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135300== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135300== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135300== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135300== by 0x497836B: setlocale (setlocale.c:337) ==135300== by 0x109047: main (first.c:157) ==135300== ==135300== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==135300== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135300== by 0x48DC163: Curl_open (url.c:510) ==135300== by 0x487CCEF: curl_easy_init (easy.c:368) ==135300== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==135300== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==135300== by 0x109086: UnknownInlinedFun (lib1508.c:39) ==135300== by 0x109086: UnknownInlinedFun (lib1508.c:30) ==135300== by 0x109086: main (first.c:178) ==135300== ==135300== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==135300== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135300== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135300== by 0x4A58EC8: tsearch (tsearch.c:290) ==135300== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135300== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135300== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135300== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135300== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135300== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135300== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135300== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135300== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135300== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135300== by 0x497836B: setlocale (setlocale.c:337) ==135300== by 0x109047: main (first.c:157) ==135300== ==135300== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==135300== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135300== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135300== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135300== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135300== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135300== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135300== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135300== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135300== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135300== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135300== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135300== by 0x497836B: setlocale (setlocale.c:337) ==135300== by 0x109047: main (first.c:157) ==135300== === End of file valgrind1508 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/8/valgrind1511 ./libtest/lib1511 http://127.0.0.1:33791/1511 > log/8/stdout1511 2> log/8/stderr1511 1511: data FAILED: --- log/8/check-expected 2024-05-23 11:17:19.294937740 +0200 +++ log/8/check-generated 2024-05-23 11:17:19.294937740 +0200 @@ -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/8/ 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 server.cmd Testnum 1511 === End of file server.cmd === Start of file stderr1511 URL: http://127.0.0.1:33791/1511 === End of file stderr1511 === Start of file valgrind1511 ==135356== ==135356== Process terminating with default action of signal 4 (SIGILL) ==135356== Illegal opcode at address 0x48DC18B ==135356== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135356== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135356== by 0x48DC18B: Curl_open (url.c:519) ==135356== by 0x487CCEF: curl_easy_init (easy.c:368) ==135356== by 0x10909B: UnknownInlinedFun (lib1511.c:36) ==135356== by 0x10909B: UnknownInlinedFun (lib1511.c:28) ==135356== by 0x10909B: main (first.c:178) ==135356== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135356== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135356== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135356== by 0x4A58EC8: tsearch (tsearch.c:290) ==135356== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135356== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135356== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135356== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135356== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135356== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135356== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135356== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135356== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135356== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135356== by 0x497836B: setlocale (setlocale.c:337) ==135356== by 0x109056: main (first.c:157) ==135356== ==135356== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135356== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135356== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135356== by 0x4A58EC8: tsearch (tsearch.c:290) ==135356== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135356== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135356== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135356== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135356== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135356== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135356== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135356== by 0x497836B: setlocale (setlocale.c:337) ==135356== by 0x109056: main (first.c:157) ==135356== ==135356== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135356== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135356== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135356== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135356== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135356== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135356== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135356== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135356== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135356== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135356== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135356== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135356== by 0x497836B: setlocale (setlocale.c:337) ==135356== by 0x109056: main (first.c:157) ==135356== ==135356== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135356== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135356== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135356== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135356== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135356== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135356== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135356== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135356== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135356== by 0x497836B: setlocale (setlocale.c:337) ==135356== by 0x109056: main (first.c:157) ==135356== ==135356== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135356== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135356== by 0x48DC163: Curl_open (url.c:510) ==135356== by 0x487CCEF: curl_easy_init (easy.c:368) ==135356== by 0x10909B: UnknownInlinedFun (lib1511.c:36) ==135356== by 0x10909B: UnknownInlinedFun (lib1511.c:28) ==135356== by 0x10909B: main (first.c:178) ==135356== ==135356== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135356== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135356== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135356== by 0x4A58EC8: tsearch (tsearch.c:290) ==135356== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135356== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135356== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135356== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135356== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135356== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135356== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135356== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135356== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135356== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135356== by 0x497836B: setlocale (setlocale.c:337) ==135356== by 0x109056: main (first.c:157) ==135356== ==135356== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135356== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135356== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135356== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135356== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135356== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135356== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135356== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135356== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135356== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135356== by 0x4CMD (33792): ../libtool --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/lib1513 http://127.0.0.1:36145/1513 > log/10/stdout1513 2> log/10/stderr1513 96B88C: __gconv_compare_alias (gconv_db.c:692) ==135356== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135356== by 0x497836B: setlocale (setlocale.c:337) ==135356== by 0x109056: main (first.c:157) ==135356== === End of file valgrind1511 CMD (33792): ../libtool --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/valgrind1514 ./libtest/lib1514 http://127.0.0.1:44205/1514 > log/2/stdout1514 2> log/2/stderr1514 CMD (33792): ../libtool --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/valgrind1515 ./libtest/lib1515 path/1515 127.0.0.1 42657 > log/6/stdout1515 2> log/6/stderr1515 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/lib1513 http://127.0.0.1:36145/1513 > log/10/stdout1513 2> log/10/stderr1513 1513: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:19.338271964 +0200 +++ log/10/check-generated 2024-05-23 11:17:19.334938562 +0200 @@ -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 server.cmd Testnum 1513 === End of file server.cmd === Start of file stderr1513 URL: http://127.0.0.1:36145/1513 === End of file stderr1513 === Start of file valgrind1513 ==135395== ==135395== Process terminating with default action of signal 4 (SIGILL) ==135395== Illegal opcode at address 0x48DC18B ==135395== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135395== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135395== by 0x48DC18B: Curl_open (url.c:519) ==135395== by 0x487CCEF: curl_easy_init (easy.c:368) ==135395== by 0x10908B: UnknownInlinedFun (lib1513.c:57) ==135395== by 0x10908B: UnknownInlinedFun (lib1513.c:50) ==135395== by 0x10908B: main (first.c:178) ==135395== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135395== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135395== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135395== by 0x4A58EC8: tsearch (tsearch.c:290) ==135395== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135395== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135395== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135395== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135395== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135395== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135395== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135395== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135395== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135395== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135395== by 0x497836B: setlocale (setlocale.c:337) ==135395== by 0x109045: main (first.c:157) ==135395== ==135395== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135395== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135395== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135395== by 0x4A58EC8: tsearch (tsearch.c:290) ==135395== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135395== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135395== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135395== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135395== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135395== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135395== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135395== by 0x497836B: setlocale (setlocale.c:337) ==135395== by 0x109045: main (first.c:157) ==135395== ==135395== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135395== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135395== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135395== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135395== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135395== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135395== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135395== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135395== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135395== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135395== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135395== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135395== by 0x497836B: setlocale (setlocale.c:337) ==135395== by 0x109045: main (first.c:157) ==135395== ==135395== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135395== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135395== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135395== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135395== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135395== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135395== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135395== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135395== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135395== by 0x497836B: setlocale (setlocale.c:337) ==135395== by 0x109045: main (first.c:157) ==135395== ==135395== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135395== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135395== by 0x48DC163: Curl_open (url.c:510) ==135395== by 0x487CCEF: curl_easy_init (easy.c:368) ==135395== by 0x10908B: UnknownInlinedFun (lib1513.c:57) ==135395== by 0x10908B: UnknownInlinedFun (lib1513.c:50) ==135395== by 0x10908B: main (first.c:178) ==135395== ==135395== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135395== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135395== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135395== by 0x4A58EC8: tsearch (tsearch.c:290) ==135395== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135395== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135395== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135395== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135395== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135395== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135395== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135395== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135395== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135395== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135395== by 0x497836B: setlocale (setlocale.c:337) ==135395== by 0x109045: main (first.c:157) ==135395== ==135395== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135395== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135395== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135395== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135395== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135395== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135395== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135395== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135395== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135395== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135395== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135395== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135395== by 0x497836B: setlocale (setlocale.c:337) ==135395== by 0x109045: main (first.c:157) ==135395== === End of file valgrind1513 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/2/valgrind1514 ./libtest/lib1514 http://127.0.0.1:44205/1514 > log/2/stdout1514 2> log/2/stderr1514 1514: 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 1514 === Start of file server.cmd Testnum 1514 === End of file server.cmd === Start of file stderr1514 URL: http://127.0.0.1:44205/1514 === End of file stderr1514 === Start of file valgrind1514 ==135420== ==135420== Process terminating with default action of signal 4 (SIGILL) ==135420== Illegal opcode at address 0x48DC18B ==135420== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135420== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135420== by 0x48DC18B: Curl_open (url.c:519) ==135420== by 0x487CCEF: curl_easy_init (easy.c:368) ==135420== by 0x1090AE: UnknownInlinedFun (lib1514.c:66) ==135420== by 0x1090AE: main (first.c:178) ==135420== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135420== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135420== by 0x4A58EC8: tsearch (tsearch.c:290) ==135420== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135420== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135420== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135420== by 0x497836B: setlocale (setlocale.c:337) ==135420== by 0x109056: main (first.c:157) ==135420== ==135420== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135420== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135420== by 0x4A58EC8: tsearch (tsearch.c:290) ==135420== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135420== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135420== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135420== by 0x497836B: setlocale (setlocale.c:337) ==135420== by 0x109056: main (first.c:157) ==135420== ==135420== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135420== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135420== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135420== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135420== by 0x497836B: setlocale (setlocale.c:337) ==135420== by 0x109056: main (first.c:157) ==135420== ==135420== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135420== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135420== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135420== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135420== by 0x497836B: setlocale (setlocale.c:337) ==135420== by 0x109056: main (first.c:157) ==135420== ==135420== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135420== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135420== by 0x48DC163: Curl_open (url.c:510) ==135420== by 0x487CCEF: curl_easy_init (easy.c:368) ==135420== by 0x1090AE: UnknownInlinedFun (lib1514.c:66) ==135420== by 0x1090AE: main (first.c:178) ==135420== ==135420== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135420== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135420== by 0x4A58EC8: tsearch (tsearch.c:290) ==135420== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135420== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135420== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135420== by 0x497836B: setlocale (setlocale.c:337) ==135420== by 0x109056: main (first.c:157) ==135420== ==135420== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135420== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135420== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135420== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135420== by 0x497836B: setlocale (setlocale.c:337) ==135420== by 0x109056: main (first.c:157) ==135420== === End of file valgrind1514 CMD (33792): ../libtool --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/valgrind1516 ./libtest/lib1515 /path/1516 127.0.0.1 40247 > log/9/stdout1516 2> log/9/stderr1516 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/6/valgrind1515 ./libtest/lib1515 path/1515 127.0.0.1 42657 > log/6/stdout1515 2> log/6/stderr1515 1515: data FAILED: --- log/6/check-expected 2024-05-23 11:17:19.434940616 +0200 +++ log/6/check-generated 2024-05-23 11:17:19.434940616 +0200 @@ -1,2 +0,0 @@ -hello[LF] -hello[LF] == Contents of files in the log/6/ dir after test 1515 === Start of file check-expected hello[LF] hello[LF] === End of file check-expected === Start of file server.cmd Testnum 1515 === End of file server.cmd === Start of file stderr1515 URL: path/1515 === End of file stderr1515 === Start of file valgrind1515 ==135490== ==135490== Process terminating with default action of signal 4 (SIGILL) ==135490== Illegal opcode at address 0x48DC18B ==135490== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135490== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135490== by 0x48DC18B: Curl_open (url.c:519) ==135490== by 0x487CCEF: curl_easy_init (easy.c:368) ==135490== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==135490== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==135490== by 0x1092FB: test (lib1515.c:130) ==135490== by 0x109098: main (first.c:178) ==135490== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==135490== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135490== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135490== by 0x4A58EC8: tsearch (tsearch.c:290) ==135490== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135490== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135490== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135490== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135490== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135490== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135490== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135490== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135490== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135490== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135490== by 0x497836B: setlocale (setlocale.c:337) ==135490== by 0x109047: main (first.c:157) ==135490== ==135490== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==135490== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135490== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135490== by 0x4A58EC8: tsearch (tsearch.c:290) ==135490== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135490== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135490== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135490== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135490== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135490== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135490== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135490== by 0x497836B: setlocale (setlocale.c:337) ==135490== by 0x109047: main (first.c:157) ==135490== ==135490== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==135490== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135490== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135490== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135490== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135490== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135490== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135490== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135490== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135490== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135490== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135490== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135490== by 0x497836B: setlocale (setlocale.c:337) ==135490== by 0x109047: main (first.c:157) ==135490== ==135490== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==135490== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135490== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135490== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135490== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135490== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135490== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135490== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135490== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135490== by 0x497836B: setlocale (setlocale.c:337) ==135490== by 0x109047: main (first.c:157) ==135490== ==135490== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==135490== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135490== by 0x48DC163: Curl_open (url.c:510) ==135490== by 0x487CCEF: curl_easy_init (easy.c:368) ==135490== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==135490== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==135490== by 0x1092FB: test (lib1515.c:130) ==135490== by 0x109098: main (first.c:178) ==135490== ==135490== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==135490== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135490== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135490== by 0x4A58EC8: tsearch (tsearch.c:290) ==135490== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135490== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135490== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135490== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135490== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135490== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135490== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135490== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135490== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135490== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135490== by 0x497836B: setlocale (setlocale.c:337) ==135490== by 0x109047: main (first.c:157) ==135490== ==135490== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==135490== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135490== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135490== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135490== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135490== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135490== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135490== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135490== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135490== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135490== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135490== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135490== by 0x497836B: setlocale (setlocale.c:337) ==135490== by 0x109047: main (first.c:157) ==135490== === End of file valgrind1515 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/9/valgrind1516 ./libtest/lib1515 /path/1516 127.0.0.1 40247 > log/9/stdout1516 2> log/9/stderr1516 lib1515 returned 132, when expecting 0 1516: exit FAILED == Contents of files in the log/9/ dir after test 1516 === Start of file server.cmd Testnum 1516 === End of file server.cmd === Start of file stderr1516 URL: /path/1516 === End of file stderr1516 === Start of file valgrind1516 ==135543== ==135543== ProCMD (0): ../src/curl --max-time 13 --output log/7/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:33971/verifiedserver" 2>log/7/http2_verify.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/11/valgrind1517 ./libtest/lib1517 http://127.0.0.1:35843/1517 > log/11/stdout1517 2> log/11/stderr1517 cess terminating with default action of signal 4 (SIGILL) ==135543== Illegal opcode at address 0x48DC18B ==135543== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135543== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135543== by 0x48DC18B: Curl_open (url.c:519) ==135543== by 0x487CCEF: curl_easy_init (easy.c:368) ==135543== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==135543== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==135543== by 0x1092FB: test (lib1515.c:130) ==135543== by 0x109098: main (first.c:178) ==135543== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==135543== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135543== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135543== by 0x4A58EC8: tsearch (tsearch.c:290) ==135543== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135543== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135543== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135543== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135543== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135543== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135543== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135543== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135543== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135543== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135543== by 0x497836B: setlocale (setlocale.c:337) ==135543== by 0x109047: main (first.c:157) ==135543== ==135543== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==135543== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135543== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135543== by 0x4A58EC8: tsearch (tsearch.c:290) ==135543== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135543== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135543== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135543== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135543== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135543== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135543== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135543== by 0x497836B: setlocale (setlocale.c:337) ==135543== by 0x109047: main (first.c:157) ==135543== ==135543== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==135543== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135543== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135543== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135543== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135543== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135543== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135543== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135543== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135543== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135543== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135543== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135543== by 0x497836B: setlocale (setlocale.c:337) ==135543== by 0x109047: main (first.c:157) ==135543== ==135543== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==135543== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135543== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135543== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135543== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135543== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135543== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135543== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135543== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135543== by 0x497836B: setlocale (setlocale.c:337) ==135543== by 0x109047: main (first.c:157) ==135543== ==135543== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==135543== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135543== by 0x48DC163: Curl_open (url.c:510) ==135543== by 0x487CCEF: curl_easy_init (easy.c:368) ==135543== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==135543== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==135543== by 0x1092FB: test (lib1515.c:130) ==135543== by 0x109098: main (first.c:178) ==135543== ==135543== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==135543== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135543== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135543== by 0x4A58EC8: tsearch (tsearch.c:290) ==135543== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135543== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135543== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135543== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135543== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135543== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135543== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135543== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135543== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135543== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135543== by 0x497836B: setlocale (setlocale.c:337) ==135543== by 0x109047: main (first.c:157) ==135543== ==135543== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==135543== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135543== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135543== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135543== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135543== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135543== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135543== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135543== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135543== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135543== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135543== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135543== by 0x497836B: setlocale (setlocale.c:337) ==135543== by 0x109047: main (first.c:157) ==135543== === End of file valgrind1516 prechecked ./libtest/lib1517 check test 1517...[HTTP POST, server responds before completed 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/11/valgrind1517 ./libtest/lib1517 http://127.0.0.1:35843/1517 > log/11/stdout1517 2> log/11/stderr1517 1517: 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 1517 === Start of file precheck-1517 URL: check Test ended with result 0 === End of file precheck-1517 === Start of file server.cmd skip: 45 Testnum 1517 === End of file server.cmd === Start of file stderr1517 URL: http://127.0.0.1:35843/1517 === End of file stderr1517 === Start of file valgrind1517 ==135624== ==135624== Process terminating with default action of signal 4 (SIGILL) ==135624== Illegal opcode at address 0x48DC18B ==135624== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135624== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135624== by 0x48DC18B: Curl_open (url.c:519) ==135624== by 0x487CCEF: curl_easy_init (easy.c:368) ==135624== by 0x109103: UnknownInlinedFun (lib1517.c:81) ==135624== by 0x109103: UnknownInlinedFun (lib1517.c:56) ==135624== by 0x109103: main (first.c:178) ==135624== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135624== at 0x4842788: malloc (vgCMD (33792): ../libtool --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/valgrind1518 ./libtest/lib1518 http://127.0.0.1:33791/1518 > log/8/stdout1518 2> log/8/stderr1518 _replace_malloc.c:446) ==135624== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135624== by 0x4A58EC8: tsearch (tsearch.c:290) ==135624== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135624== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135624== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135624== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135624== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135624== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135624== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135624== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135624== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135624== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135624== by 0x497836B: setlocale (setlocale.c:337) ==135624== by 0x109056: main (first.c:157) ==135624== ==135624== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135624== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135624== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135624== by 0x4A58EC8: tsearch (tsearch.c:290) ==135624== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135624== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135624== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135624== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135624== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135624== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135624== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135624== by 0x497836B: setlocale (setlocale.c:337) ==135624== by 0x109056: main (first.c:157) ==135624== ==135624== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135624== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135624== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135624== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135624== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135624== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135624== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135624== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135624== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135624== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135624== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135624== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135624== by 0x497836B: setlocale (setlocale.c:337) ==135624== by 0x109056: main (first.c:157) ==135624== ==135624== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135624== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135624== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135624== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135624== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135624== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135624== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135624== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135624== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135624== by 0x497836B: setlocale (setlocale.c:337) ==135624== by 0x109056: main (first.c:157) ==135624== ==135624== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135624== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135624== by 0x48DC163: Curl_open (url.c:510) ==135624== by 0x487CCEF: curl_easy_init (easy.c:368) ==135624== by 0x109103: UnknownInlinedFun (lib1517.c:81) ==135624== by 0x109103: UnknownInlinedFun (lib1517.c:56) ==135624== by 0x109103: main (first.c:178) ==135624== ==135624== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135624== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135624== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135624== by 0x4A58EC8: tsearch (tsearch.c:290) ==135624== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135624== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135624== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135624== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135624== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135624== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135624== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135624== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135624== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135624== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135624== by 0x497836B: setlocale (setlocale.c:337) ==135624== by 0x109056: main (first.c:157) ==135624== ==135624== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135624== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135624== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135624== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135624== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135624== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135624== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135624== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135624== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135624== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135624== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135624== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135624== by 0x497836B: setlocale (setlocale.c:337) ==135624== by 0x109056: main (first.c:157) ==135624== === End of file valgrind1517 CMD (33792): ../libtool --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/valgrind1519 ./libtest/lib1518 http://127.0.0.1:36145/1519 > log/10/stdout1519 2> log/10/stderr1519 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/8/valgrind1518 ./libtest/lib1518 http://127.0.0.1:33791/1518 > log/8/stdout1518 2> log/8/stderr1518 1518: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:20.041619745 +0200 +++ log/8/check-generated 2024-05-23 11:17:20.041619745 +0200 @@ -1,5 +0,0 @@ -res 0[LF] -status 302[LF] -redirects 0[LF] -effectiveurl http://127.0.0.1:33791/1518[LF] -redirecturl http://1.2 .4.5/test[LF] == Contents of files in the log/8/ dir after test 1518 === Start of file check-expected res 0[LF] status 302[LF] redirects 0[LF] effectiveurl http://127.0.0.1:33791/1518[LF] redirecturl http://1.2 .4.5/test[LF] === End of file check-expected === Start of file server.cmd Testnum 1518 === End of file server.cmd === Start of file stderr1518 URL: http://127.0.0.1:33791/1518 === End of file stderr1518 === Start of file valgrind1518 ==135671== ==135671== Process terminating with default action of signal 4 (SIGILL) ==135671== Illegal opcode at address 0x48DC18B ==135671== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135671== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135671== by 0x48DC18B: Curl_open (url.c:519) ==135671== by 0x487CCEF: curl_easy_init (easy.c:368) ==135671== by 0x109094: UnknownInlinedFun (lib1518.c:51) ==135671== by 0x109094: main (first.c:178) ==135671== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135671== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135671== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135671== by 0x4A58EC8: tsearch (tsearch.c:290) ==135671== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135671== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135671== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135671== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135671== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135671== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135671== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135671== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135671== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135671== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135671== by 0x497836B: setlocale (setlocale.c:337) ==135671== by 0x109054: main (first.c:157) ==135671== ==135671== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135671== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135671== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135671== by 0x4A58EC8: tsearch (tsearch.c:290) ==135671== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135671== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135671== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135671== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135671== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135671== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135671== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135671== by 0x497836B: setlocale (setlocale.c:337) ==135671== by 0x109054: main (first.c:157) ==135671== ==135671== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135671== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135671== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135671== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135671== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135671== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135671== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135671== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135671== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135671== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135671== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135671== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135671== by 0x497836B: setlocale (setlocale.c:337) ==135671== by 0x109054: main (first.c:157) ==135671== ==135671== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135671== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135671== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135671== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135671== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135671== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135671== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135671== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135671== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135671== by 0x497836B: setlocale (setlocale.c:337) ==135671== by 0x109054: main (first.c:157) ==135671== ==135671== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135671== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135671== by 0x48DC163: Curl_open (url.c:510) ==135671== by 0x487CCEF: curl_easy_init (easy.c:368) ==135671== by 0x109094: UnknownInlinedFun (lib1518.c:51) ==135671== by 0x109094: main (first.c:178) ==135671== ==135671== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135671== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135671== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135671== by 0x4A58EC8: tsearch (tsearch.c:290) ==135671== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135671== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135671== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135671== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135671== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135671== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135671== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135671== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135671== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135671== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135671== by 0x497836B: setlocale (setlocale.c:337) ==135671== by 0x109054: main (first.c:157) ==135671== ==135671== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135671== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135671== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135671== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135671== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135671== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135671== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135671== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135671== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135671== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135671== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135671== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135671== by 0x497836B: setlocale (setlocale.c:337) ==135671== by 0x109054: main (first.c:157) ==135671== === End of file valgrind1518 CMD (33792): ../libtool --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/valgrind1521 ./libtest/lib1521 unused > log/6/stdout1521 2> log/6/stderr1521 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/10/valgrind1519 ./libtest/lib1518 http://127.0.0.1:36145/1519 > log/10/stdout1519 2> log/10/stderr1519 1519: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:20.101620977 +0200 +++ log/10/check-generated 2024-05-23 11:17:20.101620977 +0200 @@ -1,5 +0,0 @@ -res 0[LF] -status 302[LF] -redirects 0[LF] -effectiveurl http://127.0.0.1:36145/1519[LF] -redirecturl http://127.0.0.1:36145/h%20ttp://1.2.4.5/test[LF] == Contents of files in the log/10/ dir after test 1519 === Start of file check-expected res 0[LF] status 302[LF] redirects 0[LF] effectiveurl http://127.0.0.1:36145/1519[LF] redirecturl http://127.0.0.1:36145/h%20ttp://1.2.4.5/test[LF] === End of file check-expected === Start of file server.cmd Testnum 1519 === End of file server.cmd === Start of file stderr1519 URL: http://127.0.0.1:36145/1519 === End of file stderr1519 === Start of file valgrind1519 ==135717== ==135717== Process terminating with default action of signal 4 (SIGILL) ==135717== Illegal opcode at address 0x48DC18B ==135717== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135717== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135717== by 0x48DC18B: Curl_open (url.c:519) ==135717== by 0x487CCEF: curl_easy_init (easy.c:368) ==135717== by 0x109094: UnknownInlinedFun (lib1518.c:51) ==135717== by 0x109094: main (first.c:178) ==135717== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135717== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135717== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135717== by 0x4A58EC8: tsearch (tsearch.c:290) ==135717== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135717== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135717== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135717== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135717== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135717== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135717== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135717== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135717== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135717== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135717== by 0x497836B: setlocale (setlocale.c:337) ==135717== by 0x109054: main (first.c:157) ==135717== ==135717== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135717== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135717== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135717== by 0x4A58EC8: tsearch (tsearch.c:290) ==135717== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135717== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135717== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135717== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135717== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135717== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135717== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135717== by 0x497836B: setlocale (setlocale.c:337) ==135717== by 0x109054: main (first.c:157) ==135717== ==135717== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135717== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135717== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135717== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135717== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135717== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135717== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135717== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135717== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135717== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135717== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135717== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135717== by 0x497836B: setlocale (setlocale.c:337) ==135717== by 0x109054: main (first.c:157) ==135717== ==135717== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135717== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135717== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135717== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135717== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135717== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135717== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135717== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135717== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135717== by 0x497836B: setlocale (setlocale.c:337) ==135717== by 0x109054: main (first.c:157) ==135717== ==135717== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135717== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135717== by 0x48DC163: Curl_open (url.c:510) ==135717== by 0x487CCEF: curl_easy_init (easy.c:368) ==135717== by 0x109094: UnknownInlinedFun (lib1518.c:51) ==135717== by 0x109094: main (first.c:178) ==135717== ==135717== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135717== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135717== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135717== by 0x4A58EC8: tsearch (tsearch.c:290) ==135717== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135717== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135717== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135717== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135717== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135717== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135717== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135717== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135717== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135717== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135717== by 0x497836B: setlocale (setlocale.c:337) ==135717== by 0x109054: main (first.c:157) ==135717== ==135717== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135717== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135717== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135717== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135717== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135717== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135717== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135717== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135717== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135717== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135717== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135717== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135717== by 0x497836B: setlocale (setlocale.c:337) ==135717== by 0x109054: main (first.c:157) ==135717== === End of file valgrind1519 * 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/6/valgrind1521 ./libtest/lib1521 unused > log/6/stdout1521 2> log/6/stderr1521 lib1521 returned 132, when expecting 0 1521: exit FAILED == Contents of files in the log/6/ dir after test 1521 === 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 valgrinCMD (33792): ../libtool --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/valgrind1520 ./libtest/lib1520 smtp://127.0.0.1:35685/1520 log/2/stdout1520 2> log/2/stderr1520 d1521 ==135772== ==135772== Process terminating with default action of signal 4 (SIGILL) ==135772== Illegal opcode at address 0x48DC18B ==135772== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135772== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135772== by 0x48DC18B: Curl_open (url.c:519) ==135772== by 0x487CCEF: curl_easy_init (easy.c:368) ==135772== by 0x109274: test.isra.0 (lib1521.c:139) ==135772== by 0x109070: main (first.c:178) ==135772== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135772== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135772== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135772== by 0x4A58EC8: tsearch (tsearch.c:290) ==135772== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135772== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135772== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135772== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135772== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135772== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135772== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135772== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135772== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135772== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135772== by 0x497836B: setlocale (setlocale.c:337) ==135772== by 0x109047: main (first.c:157) ==135772== ==135772== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135772== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135772== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135772== by 0x4A58EC8: tsearch (tsearch.c:290) ==135772== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135772== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135772== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135772== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135772== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135772== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135772== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135772== by 0x497836B: setlocale (setlocale.c:337) ==135772== by 0x109047: main (first.c:157) ==135772== ==135772== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135772== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135772== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135772== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135772== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135772== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135772== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135772== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135772== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135772== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135772== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135772== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135772== by 0x497836B: setlocale (setlocale.c:337) ==135772== by 0x109047: main (first.c:157) ==135772== ==135772== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135772== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135772== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135772== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135772== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135772== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135772== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135772== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135772== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135772== by 0x497836B: setlocale (setlocale.c:337) ==135772== by 0x109047: main (first.c:157) ==135772== ==135772== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135772== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135772== by 0x48DC163: Curl_open (url.c:510) ==135772== by 0x487CCEF: curl_easy_init (easy.c:368) ==135772== by 0x109274: test.isra.0 (lib1521.c:139) ==135772== by 0x109070: main (first.c:178) ==135772== ==135772== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135772== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135772== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135772== by 0x4A58EC8: tsearch (tsearch.c:290) ==135772== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135772== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135772== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135772== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135772== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135772== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135772== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135772== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135772== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135772== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135772== by 0x497836B: setlocale (setlocale.c:337) ==135772== by 0x109047: main (first.c:157) ==135772== ==135772== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135772== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135772== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135772== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135772== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135772== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135772== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135772== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135772== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135772== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135772== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135772== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135772== by 0x497836B: setlocale (setlocale.c:337) ==135772== by 0x109047: main (first.c:157) ==135772== === End of file valgrind1521 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/2/valgrind1520 ./libtest/lib1520 smtp://127.0.0.1:35685/1520 log/2/stdout1520 2> log/2/stderr1520 1520: 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 1520 === Start of file server.cmd Testnum 1520 === End of file server.cmd === Start of file stderr1520 URL: smtp://127.0.0.1:35685/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 ==135768== ==135768== Process terminating with default action of signal 4 (SIGILL) ==135768== Illegal opcode at address 0x48DC18B ==135768== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135768== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135768== by 0x48DC18B: Curl_open (url.c:519) ==135768== by 0x487CCEF: curl_easy_init (easy.c:368) ==135768== by 0x1090A1: UnknownInlinedFun (lib1520.c:86) ==135768== by 0x1090A1: main (first.c:178) ==135768== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135768== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135768== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135768== by 0x4A58EC8: tsearch (tsearch.c:290) ==135768== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135768== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135768== by 0x496C9A2: add_alias (gconvCMD (33792): ../libtool --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/valgrind1509 ./libtest/lib1509 http://the.old.moo.1509:35853/1509 127.0.0.1:33971 > log/7/stdout1509 2> log/7/stderr1509 _conf.c:178) ==135768== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135768== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135768== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135768== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135768== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135768== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135768== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135768== by 0x497836B: setlocale (setlocale.c:337) ==135768== by 0x109056: main (first.c:157) ==135768== ==135768== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135768== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135768== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135768== by 0x4A58EC8: tsearch (tsearch.c:290) ==135768== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135768== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135768== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135768== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135768== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135768== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135768== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135768== by 0x497836B: setlocale (setlocale.c:337) ==135768== by 0x109056: main (first.c:157) ==135768== ==135768== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135768== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135768== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135768== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135768== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135768== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135768== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135768== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135768== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135768== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135768== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135768== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135768== by 0x497836B: setlocale (setlocale.c:337) ==135768== by 0x109056: main (first.c:157) ==135768== ==135768== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135768== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135768== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135768== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135768== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135768== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135768== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135768== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135768== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135768== by 0x497836B: setlocale (setlocale.c:337) ==135768== by 0x109056: main (first.c:157) ==135768== ==135768== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135768== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135768== by 0x48DC163: Curl_open (url.c:510) ==135768== by 0x487CCEF: curl_easy_init (easy.c:368) ==135768== by 0x1090A1: UnknownInlinedFun (lib1520.c:86) ==135768== by 0x1090A1: main (first.c:178) ==135768== ==135768== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135768== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135768== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135768== by 0x4A58EC8: tsearch (tsearch.c:290) ==135768== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135768== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135768== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135768== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135768== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135768== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135768== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135768== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135768== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135768== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135768== by 0x497836B: setlocale (setlocale.c:337) ==135768== by 0x109056: main (first.c:157) ==135768== ==135768== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135768== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135768== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135768== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135768== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135768== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135768== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135768== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135768== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135768== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135768== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135768== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135768== by 0x497836B: setlocale (setlocale.c:337) ==135768== by 0x109056: main (first.c:157) ==135768== === End of file valgrind1520 startnew: perl -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: ../src/curl --max-time 13 --output log/7/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:33971/verifiedserver" 2>log/7/http2_verify.log RUN: HTTP2 server is on PID 135354 port 33971 * pid http-proxy => 135354 135354 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/7/valgrind1509 ./libtest/lib1509 http://the.old.moo.1509:35853/1509 127.0.0.1:33971 > log/7/stdout1509 2> log/7/stderr1509 1509: 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 1509 === Start of file http2_server.log 11:17:18.127350 Run as proxy, CONNECT to host 127.0.0.1 11:17:18.127429 Running HTTP IPv4 version on port 33971 11:17:18.127452 Wrote pid 135354 to log/7/server/http2_server.pid 11:17:18.127470 Wrote port 33971 to log/7/server/http2_server.port 11:17:19.133525 ====> Client connect 11:17:19.133547 accept_connection 3 returned 4 11:17:19.133559 accept_connection 3 returned 0 11:17:19.133569 Read 92 bytes 11:17:19.133577 Process 92 bytes request 11:17:19.133594 Got request: GET /verifiedserver HTTP/1.1 11:17:19.133600 Are-we-friendly question received 11:17:19.133618 Wrote request (92 bytes) input to log/7/proxy.input 11:17:19.133634 Identifying ourselves as friends 11:17:19.135394 Response sent (57 bytes) and written to log/7/proxy.response 11:17:19.135408 special request received, no persistency 11:17:19.135415 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:33971... * Connected to 127.0.0.1 (127.0.0.1) port 33971 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33971 > User-Agent: curl/8.8.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: 135354 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 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/valgrind1522 ./libtest/lib1522 http://127.0.0.1:40247/1522 > log/9/stdout1522 2> log/9/stderr1522 35354 === End of file proxy.response === Start of file server.cmd connection-monitor Testnum 1509 === End of file server.cmd === Start of file stderr1509 URL: http://the.old.moo.1509:35853/1509 === End of file stderr1509 === Start of file test1509.txt foo bar bar foo moo === End of file test1509.txt === Start of file valgrind1509 ==135922== ==135922== Process terminating with default action of signal 4 (SIGILL) ==135922== Illegal opcode at address 0x48DC18B ==135922== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135922== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135922== by 0x48DC18B: Curl_open (url.c:519) ==135922== by 0x487CCEF: curl_easy_init (easy.c:368) ==135922== by 0x1090AD: UnknownInlinedFun (lib1509.c:44) ==135922== by 0x1090AD: UnknownInlinedFun (lib1509.c:35) ==135922== by 0x1090AD: main (first.c:178) ==135922== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135922== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135922== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135922== by 0x4A58EC8: tsearch (tsearch.c:290) ==135922== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135922== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135922== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135922== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135922== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135922== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135922== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135922== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135922== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135922== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135922== by 0x497836B: setlocale (setlocale.c:337) ==135922== by 0x109056: main (first.c:157) ==135922== ==135922== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135922== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135922== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135922== by 0x4A58EC8: tsearch (tsearch.c:290) ==135922== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135922== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135922== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135922== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135922== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135922== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135922== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135922== by 0x497836B: setlocale (setlocale.c:337) ==135922== by 0x109056: main (first.c:157) ==135922== ==135922== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135922== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135922== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135922== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135922== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135922== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135922== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135922== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135922== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135922== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135922== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135922== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135922== by 0x497836B: setlocale (setlocale.c:337) ==135922== by 0x109056: main (first.c:157) ==135922== ==135922== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135922== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135922== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135922== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135922== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135922== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135922== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135922== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135922== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135922== by 0x497836B: setlocale (setlocale.c:337) ==135922== by 0x109056: main (first.c:157) ==135922== ==135922== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135922== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135922== by 0x48DC163: Curl_open (url.c:510) ==135922== by 0x487CCEF: curl_easy_init (easy.c:368) ==135922== by 0x1090AD: UnknownInlinedFun (lib1509.c:44) ==135922== by 0x1090AD: UnknownInlinedFun (lib1509.c:35) ==135922== by 0x1090AD: main (first.c:178) ==135922== ==135922== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135922== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135922== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135922== by 0x4A58EC8: tsearch (tsearch.c:290) ==135922== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135922== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135922== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135922== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135922== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135922== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135922== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135922== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135922== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135922== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135922== by 0x497836B: setlocale (setlocale.c:337) ==135922== by 0x109056: main (first.c:157) ==135922== ==135922== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135922== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135922== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135922== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135922== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135922== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135922== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135922== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135922== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135922== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135922== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135922== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135922== by 0x497836B: setlocale (setlocale.c:337) ==135922== by 0x109056: main (first.c:157) ==135922== === End of file valgrind1509 CMD (33792): ../libtool --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/valgrind1524 ../src/curl -q --output log/8/curl1524.out --include --trace-ascii log/8/trace1524 --trace-time http://127.0.0.1:33791/blah/1524 -L -T log/8/upload1524.txt > log/8/stdout1524 2> log/8/stderr1524 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/9/valgrind1522 ./libtest/lib1522 http://127.0.0.1:40247/1522 > log/9/stdout1522 2> log/9/stderr1522 1522: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:20.368293122 +0200 +++ log/9/check-generated 2024-05-23 11:17:20.368293122 +0200 @@ -1,3 +0,0 @@ --foo-[LF] -uploadSize = 40960[LF] -!!!!!!!!!! PASS[LF] == Contents of files in the log/9/ dir after test 1522 === Start of file check-expected -foo-[LF] uploadSize = 40960[LF] !!!!!!!!!! PASS[LF] === End of file check-expected === Start of file server.cmd Testnum 1522 === End of file server.cmd === Start of file stderr1522 URL: http://127.0.0.1:40247/1522 === End of file stderr1522 === Start of file valgrind1522 ==135861== ==135861== Process terminating with default action of signal 4 (SIGILL) ==135861== Illegal opcode at address 0x48DC18B ==135861== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135861== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135861== by 0x48DC18B: Curl_open (url.c:519) ==135861== by 0x487CCEF: curl_easy_init (easy.c:368) ==135861== by 0x10908E: UnknownInlinedFun (lib1522.c:57) ==135861== by 0x10908E: main (first.c:178) ==135861== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135861== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135861== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135861== by 0x4A58EC8: tsearch (tsearch.c:290) ==135861== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135861== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135861== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135861== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135861== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135861== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135861== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135861== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135861== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135861== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135861== by 0x497836B: setlocale (setlocale.c:337) ==135861== by 0x109056: main (first.c:157) ==135861== ==135861== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135861== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135861== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135861== by 0x4A58EC8: tsearch (tsearch.c:290) ==135861== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135861== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135861== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135861== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135861== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135861== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135861== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135861== by 0x497836B: setlocale (setlocale.c:337) ==135861== by 0x109056: main (first.c:157) ==135861== ==135861== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135861== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135861== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135861== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135861== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135861== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135861== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135861== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135861== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135861== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135861== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135861== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135861== by 0x497836B: setlocale (setlocale.c:337) ==135861== by 0x109056: main (first.c:157) ==135861== ==135861== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135861== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135861== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135861== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135861== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135861== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135861== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135861== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135861== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135861== by 0x497836B: setlocale (setlocale.c:337) ==135861== by 0x109056: main (first.c:157) ==135861== ==135861== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135861== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135861== by 0x48DC163: Curl_open (url.c:510) ==135861== by 0x487CCEF: curl_easy_init (easy.c:368) ==135861== by 0x10908E: UnknownInlinedFun (lib1522.c:57) ==135861== by 0x10908E: main (first.c:178) ==135861== ==135861== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135861== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135861== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135861== by 0x4A58EC8: tsearch (tsearch.c:290) ==135861== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135861== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135861== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135861== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135861== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135861== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135861== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135861== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135861== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135861== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135861== by 0x497836B: setlocale (setlocale.c:337) ==135861== by 0x109056: main (first.c:157) ==135861== ==135861== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135861== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135861== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135861== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135861== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135861== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135861== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135861== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135861== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135861== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135861== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135861== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135861== by 0x497836B: setlocale (setlocale.c:337) ==135861== by 0x109056: main (first.c:157) ==135861== === End of file valgrind1522 startnew: /startdir/src/curl/tests/dictserver.py --port 45011 --pidfile "log/12/server/dict_server.pid" --logfile "log/12/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 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/8/valgrind1524 ../src/curl -q --output log/8/curl1524.out --include --trace-ascii log/8/trace1524 --trace-time http://127.0.0.1:33791/blah/1524 -L -T log/8/upload1524.txt > log/8/stdout1524 2> log/8/stderr1524 1524: protocol FAILED! There was no content at all in the 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/11/valgrind1523 ./libtest/lib1523 http://127.0.0.1:35843/1523 > log/11/stdout1523 2> log/11/stderr1523 RUN: Process with pid 75073 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/valgrind1525 ./libtest/lib1525 http://the.old.moo.1525:36145/1525 127.0.0.1:36757 > log/10/stdout1525 2> log/10/stderr1525 le log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1524 === Start of file server.cmd Testnum 1524 === End of file server.cmd === Start of file upload1524.txt moo === End of file upload1524.txt === Start of file valgrind1524 ==135995== ==135995== Process terminating with default action of signal 4 (SIGILL) ==135995== Illegal opcode at address 0x10B06D ==135995== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==135995== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1524 startnew: /startdir/src/curl/tests/smbserver.py --port 34875 --pidfile "log/4/server/smb_server.pid" --logfile "log/4/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/negtelnetserver.py --port 44305 --pidfile "log/5/server/telnet_server.pid" --logfile "log/5/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 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/10/valgrind1525 ./libtest/lib1525 http://the.old.moo.1525:36145/1525 127.0.0.1:36757 > log/10/stdout1525 2> log/10/stderr1525 1525: 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 1525 === Start of file server.cmd Testnum 1525 === End of file server.cmd === Start of file stderr1525 URL: http://the.old.moo.1525:36145/1525 === End of file stderr1525 === Start of file valgrind1525 ==136088== ==136088== Process terminating with default action of signal 4 (SIGILL) ==136088== Illegal opcode at address 0x48DC18B ==136088== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136088== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136088== by 0x48DC18B: Curl_open (url.c:519) ==136088== by 0x487CCEF: curl_easy_init (easy.c:368) ==136088== by 0x109099: UnknownInlinedFun (lib1525.c:61) ==136088== by 0x109099: main (first.c:178) ==136088== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136088== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136088== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136088== by 0x4A58EC8: tsearch (tsearch.c:290) ==136088== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136088== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136088== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136088== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136088== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136088== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136088== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136088== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136088== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136088== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136088== by 0x497836B: setlocale (setlocale.c:337) ==136088== by 0x109045: main (first.c:157) ==136088== ==136088== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136088== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136088== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136088== by 0x4A58EC8: tsearch (tsearch.c:290) ==136088== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136088== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136088== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136088== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136088== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136088== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136088== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136088== by 0x497836B: setlocale (setlocale.c:337) ==136088== by 0x109045: main (first.c:157) ==136088== ==136088== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136088== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136088== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136088== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136088== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136088== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136088== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136088== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136088== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136088== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136088== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136088== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136088== by 0x497836B: setlocale (setlocale.c:337) ==136088== by 0x109045: main (first.c:157) ==136088== ==136088== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136088== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136088== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136088== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136088== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136088== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136088== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136088== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136088== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136088== by 0x497836B: setlocale (setlocale.c:337) ==136088== by 0x109045: main (first.c:157) ==136088== ==136088== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136088== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136088== by 0x48DC163: Curl_open (url.c:510) ==136088== by 0x487CCEF: curl_easy_init (easy.c:368) ==136088== by 0x109099: UnknownInlinedFun (lib1525.c:61) ==136088== by 0x109099: main (first.c:178) ==136088== ==136088== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136088== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136088== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136088== by 0x4A58EC8: tsearch (tsearch.c:290) ==136088== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136088== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136088== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136088== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136088== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136088== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136088== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136088== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136088== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136088== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136088== by 0x497836B: setlocale (setlocale.c:337) ==136088== by 0x109045: main (first.c:157) ==136088== ==136088== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136088== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136088== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136088== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136088== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136088== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136088== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136088== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136088== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136088== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136088== 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/6/valgrind1526 ./libtest/lib1526 http://the.old.moo.1526:42657/1526 127.0.0.1:42463 > log/6/stdout1526 2> log/6/stderr1526 CMD (33792): ../libtool --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/valgrind1527 ./libtest/lib1527 http://the.old.moo.1527:44205/1527 127.0.0.1:35369 > log/2/stdout1527 2> log/2/stderr1527 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136088== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136088== by 0x497836B: setlocale (setlocale.c:337) ==136088== by 0x109045: main (first.c:157) ==136088== === End of file valgrind1525 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/6/valgrind1526 ./libtest/lib1526 http://the.old.moo.1526:42657/1526 127.0.0.1:42463 > log/6/stdout1526 2> log/6/stderr1526 1526: 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 1526 === Start of file server.cmd Testnum 1526 === End of file server.cmd === Start of file stderr1526 URL: http://the.old.moo.1526:42657/1526 === End of file stderr1526 === Start of file valgrind1526 ==136138== ==136138== Process terminating with default action of signal 4 (SIGILL) ==136138== Illegal opcode at address 0x48DC18B ==136138== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136138== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136138== by 0x48DC18B: Curl_open (url.c:519) ==136138== by 0x487CCEF: curl_easy_init (easy.c:368) ==136138== by 0x1090A0: UnknownInlinedFun (lib1526.c:59) ==136138== by 0x1090A0: main (first.c:178) ==136138== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136138== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136138== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136138== by 0x4A58EC8: tsearch (tsearch.c:290) ==136138== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136138== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136138== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136138== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136138== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136138== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136138== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136138== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136138== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136138== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136138== by 0x497836B: setlocale (setlocale.c:337) ==136138== by 0x10904B: main (first.c:157) ==136138== ==136138== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136138== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136138== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136138== by 0x4A58EC8: tsearch (tsearch.c:290) ==136138== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136138== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136138== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136138== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136138== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136138== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136138== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136138== by 0x497836B: setlocale (setlocale.c:337) ==136138== by 0x10904B: main (first.c:157) ==136138== ==136138== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136138== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136138== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136138== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136138== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136138== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136138== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136138== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136138== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136138== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136138== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136138== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136138== by 0x497836B: setlocale (setlocale.c:337) ==136138== by 0x10904B: main (first.c:157) ==136138== ==136138== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136138== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136138== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136138== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136138== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136138== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136138== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136138== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136138== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136138== by 0x497836B: setlocale (setlocale.c:337) ==136138== by 0x10904B: main (first.c:157) ==136138== ==136138== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136138== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136138== by 0x48DC163: Curl_open (url.c:510) ==136138== by 0x487CCEF: curl_easy_init (easy.c:368) ==136138== by 0x1090A0: UnknownInlinedFun (lib1526.c:59) ==136138== by 0x1090A0: main (first.c:178) ==136138== ==136138== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136138== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136138== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136138== by 0x4A58EC8: tsearch (tsearch.c:290) ==136138== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136138== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136138== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136138== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136138== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136138== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136138== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136138== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136138== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136138== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136138== by 0x497836B: setlocale (setlocale.c:337) ==136138== by 0x10904B: main (first.c:157) ==136138== ==136138== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136138== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136138== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136138== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136138== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136138== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136138== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136138== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136138== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136138== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136138== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136138== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136138== by 0x497836B: setlocale (setlocale.c:337) ==136138== by 0x10904B: main (first.c:157) ==136138== === End of file valgrind1526 test 1527...[Check same headers are generated 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/2/valgrind1527 ./libtest/lib1527 http://the.old.moo.1527:44205/1527 127.0.0.1:35369 > log/2/stdout1527 2> log/2/stderr1527 1527: 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 1527 === Start of file server.cmd Testnum 1527 === End of file server.cmd === Start of file stderr1527 URL: http://the.old.moo.1527:44205/1527 ===CMD (33792): ../libtool --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/valgrind1528 ./libtest/lib1528 http://the.old.moo:35853/1528 127.0.0.1:33971 > log/7/stdout1528 2> log/7/stderr1528 End of file stderr1527 === Start of file valgrind1527 ==136157== ==136157== Process terminating with default action of signal 4 (SIGILL) ==136157== Illegal opcode at address 0x48DC18B ==136157== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136157== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136157== by 0x48DC18B: Curl_open (url.c:519) ==136157== by 0x487CCEF: curl_easy_init (easy.c:368) ==136157== by 0x1090A0: UnknownInlinedFun (lib1527.c:60) ==136157== by 0x1090A0: main (first.c:178) ==136157== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136157== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136157== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136157== by 0x4A58EC8: tsearch (tsearch.c:290) ==136157== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136157== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136157== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136157== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136157== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136157== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136157== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136157== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136157== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136157== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136157== by 0x497836B: setlocale (setlocale.c:337) ==136157== by 0x10904B: main (first.c:157) ==136157== ==136157== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136157== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136157== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136157== by 0x4A58EC8: tsearch (tsearch.c:290) ==136157== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136157== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136157== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136157== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136157== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136157== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136157== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136157== by 0x497836B: setlocale (setlocale.c:337) ==136157== by 0x10904B: main (first.c:157) ==136157== ==136157== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136157== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136157== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136157== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136157== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136157== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136157== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136157== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136157== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136157== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136157== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136157== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136157== by 0x497836B: setlocale (setlocale.c:337) ==136157== by 0x10904B: main (first.c:157) ==136157== ==136157== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136157== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136157== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136157== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136157== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136157== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136157== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136157== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136157== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136157== by 0x497836B: setlocale (setlocale.c:337) ==136157== by 0x10904B: main (first.c:157) ==136157== ==136157== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136157== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136157== by 0x48DC163: Curl_open (url.c:510) ==136157== by 0x487CCEF: curl_easy_init (easy.c:368) ==136157== by 0x1090A0: UnknownInlinedFun (lib1527.c:60) ==136157== by 0x1090A0: main (first.c:178) ==136157== ==136157== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136157== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136157== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136157== by 0x4A58EC8: tsearch (tsearch.c:290) ==136157== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136157== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136157== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136157== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136157== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136157== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136157== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136157== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136157== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136157== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136157== by 0x497836B: setlocale (setlocale.c:337) ==136157== by 0x10904B: main (first.c:157) ==136157== ==136157== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136157== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136157== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136157== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136157== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136157== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136157== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136157== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136157== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136157== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136157== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136157== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136157== by 0x497836B: setlocale (setlocale.c:337) ==136157== by 0x10904B: main (first.c:157) ==136157== === End of file valgrind1527 CMD (33792): ../libtool --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/valgrind1529 ./libtest/lib1529 "http://the.old.moo:40247/1529" 127.0.0.1:44975 > log/9/stdout1529 2> log/9/stderr1529 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/7/valgrind1528 ./libtest/lib1528 http://the.old.moo:35853/1528 127.0.0.1:33971 > log/7/stdout1528 2> log/7/stderr1528 1528: data FAILED: --- log/7/check-expected 2024-05-23 11:17:21.221643985 +0200 +++ log/7/check-generated 2024-05-23 11:17:21.221643985 +0200 @@ -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/7/ 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 server.cmd Testnum 1528 === End of file server.cmd === Start of file stderr1528 URL: http://the.old.moo:35853/1528 === End of file stderr1528 === Start of file valgrind1528 ==136235== ==136235== Process terminating with default action of signal 4 (SIGILL) ==136235== Illegal opcode at address 0x48DC18B ==136235== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136235== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136235== by 0x48DC18B: Curl_open (url.c:519) ==136235== by 0x487CCEF: curl_easy_init (easy.c:368) ==136235== by 0x1090A0: UnknownInlinedFun (lib1528.c:42) ==136235== by 0x1090A0: main (first.c:178) ==136235== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136235== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136235== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136235== by 0x4A58EC8: tsearch (tsearch.c:290) ==136235== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136235== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136235== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136235== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136235== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136235== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136235== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136235== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136235== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136235== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136235== by 0x497836B: setlocale (setlocale.c:337) ==136235== by 0x10904B: main (first.c:157) ==136235== ==136235== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136235== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136235== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136235== by 0x4A58EC8: tsearch (tsearch.c:290) ==136235== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136235== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136235== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136235== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136235== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136235== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136235== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136235== by 0x497836B: setlocale (setlocale.c:337) ==136235== by 0x10904B: main (first.c:157) ==136235== ==136235== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136235== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136235== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136235== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136235== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136235== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136235== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136235== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136235== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136235== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136235== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136235== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136235== by 0x497836B: setlocale (setlocale.c:337) ==136235== by 0x10904B: main (first.c:157) ==136235== ==136235== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136235== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136235== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136235== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136235== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136235== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136235== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136235== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136235== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136235== by 0x497836B: setlocale (setlocale.c:337) ==136235== by 0x10904B: main (first.c:157) ==136235== ==136235== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136235== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136235== by 0x48DC163: Curl_open (url.c:510) ==136235== by 0x487CCEF: curl_easy_init (easy.c:368) ==136235== by 0x1090A0: UnknownInlinedFun (lib1528.c:42) ==136235== by 0x1090A0: main (first.c:178) ==136235== ==136235== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136235== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136235== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136235== by 0x4A58EC8: tsearch (tsearch.c:290) ==136235== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136235== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136235== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136235== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136235== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136235== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136235== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136235== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136235== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136235== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136235== by 0x497836B: setlocale (setlocale.c:337) ==136235== by 0x10904B: main (first.c:157) ==136235== ==136235== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136235== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136235== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136235== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136235== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136235== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136235== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136235== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136235== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136235== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136235== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136235== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136235== by 0x497836B: setlocale (setlocale.c:337) ==136235== by 0x10904B: main (first.c:157) ==136235== === End of file valgrind1528 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/9/valgrind1529 ./libtest/lib1529 "http://the.old.moo:40247/1529" 127.0.0.1:44975 > log/9/stdout1529 2> log/9/stderr1529 lib1529 returned 132, when expecting 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/8/valgrind1531 ./libtest/lib1531 127.0.0.1:33791/1531 > log/8/stdout1531 2> log/8/stderr1531 1529: exit FAILED == Contents of files in the log/9/ dir after test 1529 === Start of file server.cmd Testnum 1529 === End of file server.cmd === Start of file stderr1529 URL: http://the.old.moo:40247/1529 === End of file stderr1529 === Start of file valgrind1529 ==136241== ==136241== Process terminating with default action of signal 4 (SIGILL) ==136241== Illegal opcode at address 0x48DC18B ==136241== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136241== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136241== by 0x48DC18B: Curl_open (url.c:519) ==136241== by 0x487CCEF: curl_easy_init (easy.c:368) ==136241== by 0x109234: test (lib1529.c:42) ==136241== by 0x109087: main (first.c:178) ==136241== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136241== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136241== by 0x4A58EC8: tsearch (tsearch.c:290) ==136241== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136241== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136241== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136241== by 0x497836B: setlocale (setlocale.c:337) ==136241== by 0x109047: main (first.c:157) ==136241== ==136241== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136241== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136241== by 0x4A58EC8: tsearch (tsearch.c:290) ==136241== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136241== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136241== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136241== by 0x497836B: setlocale (setlocale.c:337) ==136241== by 0x109047: main (first.c:157) ==136241== ==136241== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136241== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136241== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136241== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136241== by 0x497836B: setlocale (setlocale.c:337) ==136241== by 0x109047: main (first.c:157) ==136241== ==136241== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136241== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136241== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136241== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136241== by 0x497836B: setlocale (setlocale.c:337) ==136241== by 0x109047: main (first.c:157) ==136241== ==136241== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136241== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136241== by 0x48DC163: Curl_open (url.c:510) ==136241== by 0x487CCEF: curl_easy_init (easy.c:368) ==136241== by 0x109234: test (lib1529.c:42) ==136241== by 0x109087: main (first.c:178) ==136241== ==136241== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136241== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136241== by 0x4A58EC8: tsearch (tsearch.c:290) ==136241== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136241== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136241== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136241== by 0x497836B: setlocale (setlocale.c:337) ==136241== by 0x109047: main (first.c:157) ==136241== ==136241== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136241== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136241== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136241== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136241== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136241== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136241== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136241== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136241== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136241== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136241== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136241== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136241== by 0x497836B: setlocale (setlocale.c:337) ==136241== by 0x109047: main (first.c:157) ==136241== === End of file valgrind1529 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/8/valgrind1531 ./libtest/lib1531 127.0.0.1:33791/1531 > log/8/stdout1531 2> log/8/stderr1531 1531: 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 1531 === Start of file server.cmd Testnum 1531 === End of file server.cmd === Start of file stderr1531 URL: 127.0.0.1:33791/1531 === End of file stderr1531 === Start of file valgrind1531 ==136359== ==136359== Process terminating with default action of signal 4 (SIGILL) ==136359== Illegal opcode at address 0x48DC18B ==136359== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136359== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136359== by 0x48DC18B: Curl_open (url.c:519) ==136359== by 0x487CCEF: curl_easy_init (easy.c:368) ==136359== by 0x1092F1: test.part.0 (lib1531.c:50) ==136359== by 0x10909E: UnknownInlinedFun (lib1531.c:47) ==136359== by 0x10909E: main (first.c:178) ==136359== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136359== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136359== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136359== by 0x4A58EC8: 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/12/valgrind1530 ./libtest/lib1530 - > log/12/stdout1530 2> log/12/stderr1530 (tsearch.c:290) ==136359== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136359== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136359== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136359== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136359== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136359== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136359== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136359== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136359== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136359== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136359== by 0x497836B: setlocale (setlocale.c:337) ==136359== by 0x109047: main (first.c:157) ==136359== ==136359== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136359== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136359== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136359== by 0x4A58EC8: tsearch (tsearch.c:290) ==136359== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136359== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136359== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136359== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136359== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136359== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136359== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136359== by 0x497836B: setlocale (setlocale.c:337) ==136359== by 0x109047: main (first.c:157) ==136359== ==136359== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136359== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136359== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136359== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136359== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136359== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136359== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136359== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136359== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136359== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136359== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136359== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136359== by 0x497836B: setlocale (setlocale.c:337) ==136359== by 0x109047: main (first.c:157) ==136359== ==136359== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136359== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136359== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136359== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136359== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136359== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136359== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136359== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136359== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136359== by 0x497836B: setlocale (setlocale.c:337) ==136359== by 0x109047: main (first.c:157) ==136359== ==136359== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136359== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136359== by 0x48DC163: Curl_open (url.c:510) ==136359== by 0x487CCEF: curl_easy_init (easy.c:368) ==136359== by 0x1092F1: test.part.0 (lib1531.c:50) ==136359== by 0x10909E: UnknownInlinedFun (lib1531.c:47) ==136359== by 0x10909E: main (first.c:178) ==136359== ==136359== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136359== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136359== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136359== by 0x4A58EC8: tsearch (tsearch.c:290) ==136359== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136359== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136359== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136359== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136359== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136359== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136359== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136359== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136359== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136359== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136359== by 0x497836B: setlocale (setlocale.c:337) ==136359== by 0x109047: main (first.c:157) ==136359== ==136359== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136359== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136359== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136359== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136359== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136359== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136359== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136359== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136359== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136359== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136359== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136359== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136359== by 0x497836B: setlocale (setlocale.c:337) ==136359== by 0x109047: main (first.c:157) ==136359== === End of file valgrind1531 * 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/12/valgrind1530 ./libtest/lib1530 - > log/12/stdout1530 2> log/12/stderr1530 lib1530 returned 132, when expecting 7 1530: exit FAILED == Contents of files in the log/12/ dir after test 1530 === 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 ==136332== ==136332== Process terminating with default action of signal 4 (SIGILL) ==136332== Illegal opcode at address 0x48DC18B ==136332== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136332== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136332== by 0x48DC18B: Curl_open (url.c:519) ==136332== by 0x487CCEF: curl_easy_init (easy.c:368) ==136332== by 0x109087: UnknownInlinedFun (lib1530.c:51) ==136332== by 0x109087: main (first.c:178) ==136332== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136332== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136332== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136332== by 0x4A58EC8: tsearch (tsearch.c:290) ==136332== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136332== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136332== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136332== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136332== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136332== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136332== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136332== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136332== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136332== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136332== by 0x497836B: setlocale (setlocale.c:337) ==136332== by 0x109047: main (first.c:157) ==136332== ==136332== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136332== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136332== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136332== by 0x4A58EC8: tsearch (tsearch.c:290CMD (33792): ../libtool --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/valgrind1533 ./libtest/lib1533 http://127.0.0.1:33519/1533 > log/5/stdout1533 2> log/5/stderr1533 CMD (33792): ../libtool --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/valgrind1532 ./libtest/lib1532 http://127.0.0.1:41947/1532 > log/4/stdout1532 2> log/4/stderr1532 ) ==136332== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136332== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136332== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136332== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136332== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136332== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136332== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136332== by 0x497836B: setlocale (setlocale.c:337) ==136332== by 0x109047: main (first.c:157) ==136332== ==136332== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136332== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136332== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136332== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136332== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136332== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136332== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136332== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136332== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136332== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136332== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136332== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136332== by 0x497836B: setlocale (setlocale.c:337) ==136332== by 0x109047: main (first.c:157) ==136332== ==136332== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136332== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136332== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136332== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136332== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136332== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136332== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136332== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136332== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136332== by 0x497836B: setlocale (setlocale.c:337) ==136332== by 0x109047: main (first.c:157) ==136332== ==136332== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136332== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136332== by 0x48DC163: Curl_open (url.c:510) ==136332== by 0x487CCEF: curl_easy_init (easy.c:368) ==136332== by 0x109087: UnknownInlinedFun (lib1530.c:51) ==136332== by 0x109087: main (first.c:178) ==136332== ==136332== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136332== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136332== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136332== by 0x4A58EC8: tsearch (tsearch.c:290) ==136332== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136332== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136332== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136332== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136332== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136332== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136332== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136332== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136332== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136332== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136332== by 0x497836B: setlocale (setlocale.c:337) ==136332== by 0x109047: main (first.c:157) ==136332== ==136332== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136332== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136332== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136332== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136332== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136332== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136332== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136332== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136332== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136332== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136332== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136332== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136332== by 0x497836B: setlocale (setlocale.c:337) ==136332== by 0x109047: main (first.c:157) ==136332== === End of file valgrind1530 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/5/valgrind1533 ./libtest/lib1533 http://127.0.0.1:33519/1533 > log/5/stdout1533 2> log/5/stderr1533 1533: 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 1533 === Start of file server.cmd auth_required Testnum 1533 === End of file server.cmd === Start of file stderr1533 URL: http://127.0.0.1:33519/1533 === End of file stderr1533 === Start of file valgrind1533 ==136454== ==136454== Process terminating with default action of signal 4 (SIGILL) ==136454== Illegal opcode at address 0x48DC18B ==136454== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136454== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136454== by 0x48DC18B: Curl_open (url.c:519) ==136454== by 0x487CCEF: curl_easy_init (easy.c:368) ==136454== by 0x109099: UnknownInlinedFun (lib1533.c:142) ==136454== by 0x109099: main (first.c:178) ==136454== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136454== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136454== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136454== by 0x4A58EC8: tsearch (tsearch.c:290) ==136454== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136454== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136454== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136454== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136454== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136454== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136454== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136454== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136454== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136454== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136454== by 0x497836B: setlocale (setlocale.c:337) ==136454== by 0x109056: main (first.c:157) ==136454== ==136454== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136454== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136454== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136454== by 0x4A58EC8: tsearch (tsearch.c:290) ==136454== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136454== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136454== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136454== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136454== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136454== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136454== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136454== by 0x497836B: setlocale (setlocale.c:337) ==136454== by 0x109056: main (first.c:157) ==136454== ==136454== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136454== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136454== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136454== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136454== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136454== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136454== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136454== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136454== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136454== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136454== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136454== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136454== by 0x497836B: setlocale (setlocale.c:337) ==136454== by 0x109056: main (first.c:157) ==136454== ==136454== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136454== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136454== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136454== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136454== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136454== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136454== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136454== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136454== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136454== by 0x497836B: setlocale (setlocale.c:337) ==136454== by 0x109056: main (first.c:157) ==136454== ==136454== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136454== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136454== by 0x48DC163: Curl_open (url.c:510) ==136454== by 0x487CCEF: curl_easy_init (easy.c:368) ==136454== by 0x109099: UnknownInlinedFun (lib1533.c:142) ==136454== by 0x109099: main (first.c:178) ==136454== ==136454== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136454== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136454== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136454== by 0x4A58EC8: tsearch (tsearch.c:290) ==136454== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136454== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136454== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136454== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136454== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136454== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136454== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136454== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136454== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136454== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136454== by 0x497836B: setlocale (setlocale.c:337) ==136454== by 0x109056: main (first.c:157) ==136454== ==136454== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136454== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136454== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136454== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136454== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136454== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136454== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136454== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136454== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136454== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136454== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136454== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136454== by 0x497836B: setlocale (setlocale.c:337) ==136454== by 0x109056: main (first.c:157) ==136454== === End of file valgrind1533 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/4/valgrind1532 ./libtest/lib1532 http://127.0.0.1:41947/1532 > log/4/stdout1532 2> log/4/stderr1532 1532: 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 1532 === Start of file server.cmd Testnum 1532 === End of file server.cmd === Start of file stderr1532 URL: http://127.0.0.1:41947/1532 === End of file stderr1532 === Start of file valgrind1532 ==136428== ==136428== Process terminating with default action of signal 4 (SIGILL) ==136428== Illegal opcode at address 0x48DC18B ==136428== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136428== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136428== by 0x48DC18B: Curl_open (url.c:519) ==136428== by 0x487CCEF: curl_easy_init (easy.c:368) ==136428== by 0x10909B: UnknownInlinedFun (lib1532.c:38) ==136428== by 0x10909B: UnknownInlinedFun (lib1532.c:30) ==136428== by 0x10909B: main (first.c:178) ==136428== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136428== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136428== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136428== by 0x4A58EC8: tsearch (tsearch.c:290) ==136428== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136428== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136428== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136428== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136428== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136428== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136428== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136428== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136428== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136428== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136428== by 0x497836B: setlocale (setlocale.c:337) ==136428== by 0x109056: main (first.c:157) ==136428== ==136428== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136428== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136428== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136428== by 0x4A58EC8: tsearch (tsearch.c:290) ==136428== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136428== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136428== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136428== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136428== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136428== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136428== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136428== by 0x497836B: setlocale (setlocale.c:337) ==136428== by 0x109056: main (first.c:157) ==136428== ==136428== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136428== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136428== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136428== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136428== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136428== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136428== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136428== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136428== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136428== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136428== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136428== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136428== by 0x497836B: setlocale (setlocale.c:337) ==136428== by 0x109056: main (first.c:157) ==136428== ==136428== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136428== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136428== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136428== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136428== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136428== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) CMD (33792): ../libtool --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/valgrind1534 ./libtest/lib1534 http://127.0.0.1:36145/1534 > log/10/stdout1534 2> log/10/stderr1534 ==136428== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136428== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136428== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136428== by 0x497836B: setlocale (setlocale.c:337) ==136428== by 0x109056: main (first.c:157) ==136428== ==136428== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136428== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136428== by 0x48DC163: Curl_open (url.c:510) ==136428== by 0x487CCEF: curl_easy_init (easy.c:368) ==136428== by 0x10909B: UnknownInlinedFun (lib1532.c:38) ==136428== by 0x10909B: UnknownInlinedFun (lib1532.c:30) ==136428== by 0x10909B: main (first.c:178) ==136428== ==136428== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136428== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136428== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136428== by 0x4A58EC8: tsearch (tsearch.c:290) ==136428== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136428== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136428== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136428== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136428== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136428== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136428== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136428== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136428== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136428== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136428== by 0x497836B: setlocale (setlocale.c:337) ==136428== by 0x109056: main (first.c:157) ==136428== ==136428== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136428== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136428== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136428== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136428== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136428== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136428== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136428== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136428== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136428== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136428== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136428== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136428== by 0x497836B: setlocale (setlocale.c:337) ==136428== by 0x109056: main (first.c:157) ==136428== === End of file valgrind1532 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/10/valgrind1534 ./libtest/lib1534 http://127.0.0.1:36145/1534 > log/10/stdout1534 2> log/10/stderr1534 1534: 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 1534 === Start of file server.cmd Testnum 1534 === End of file server.cmd === Start of file stderr1534 URL: http://127.0.0.1:36145/1534 === End of file stderr1534 === Start of file valgrind1534 ==136528== ==136528== Process terminating with default action of signal 4 (SIGILL) ==136528== Illegal opcode at address 0x48DC18B ==136528== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136528== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136528== by 0x48DC18B: Curl_open (url.c:519) ==136528== by 0x487CCEF: curl_easy_init (easy.c:368) ==136528== by 0x10909E: UnknownInlinedFun (lib1534.c:38) ==136528== by 0x10909E: UnknownInlinedFun (lib1534.c:30) ==136528== by 0x10909E: main (first.c:178) ==136528== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136528== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136528== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136528== by 0x4A58EC8: tsearch (tsearch.c:290) ==136528== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136528== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136528== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136528== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136528== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136528== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136528== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136528== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136528== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136528== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136528== by 0x497836B: setlocale (setlocale.c:337) ==136528== by 0x109058: main (first.c:157) ==136528== ==136528== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136528== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136528== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136528== by 0x4A58EC8: tsearch (tsearch.c:290) ==136528== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136528== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136528== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136528== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136528== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136528== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136528== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136528== by 0x497836B: setlocale (setlocale.c:337) ==136528== by 0x109058: main (first.c:157) ==136528== ==136528== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136528== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136528== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136528== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136528== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136528== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136528== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136528== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136528== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136528== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136528== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136528== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136528== by 0x497836B: setlocale (setlocale.c:337) ==136528== by 0x109058: main (first.c:157) ==136528== ==136528== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136528== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136528== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136528== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136528== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136528== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136528== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136528== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136528== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136528== by 0x497836B: setlocale (setlocale.c:337) ==136528== by 0x109058: main (first.c:157) ==136528== ==136528== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136528== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136528== by 0x48DC163: Curl_open (url.c:510) ==136528== by 0x487CCEF: curl_easy_init (easy.c:368) ==136528== by 0x10909E: UnknownInlinedFun (lib1534.c:38) ==136528== by 0x10909E: UnknownInlinedFun (lib1534.c:30) ==136528== by 0x10909E: main (first.c:178) ==136528== ==136528== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136528== at 0x4842788: 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/6/valgrind1535 ./libtest/lib1535 http://127.0.0.1:42657/1535 > log/6/stdout1535 2> log/6/stderr1535 ==136528== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136528== by 0x4A58EC8: tsearch (tsearch.c:290) ==136528== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136528== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136528== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136528== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136528== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136528== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136528== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136528== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136528== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136528== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136528== by 0x497836B: setlocale (setlocale.c:337) ==136528== by 0x109058: main (first.c:157) ==136528== ==136528== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136528== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136528== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136528== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136528== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136528== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136528== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136528== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136528== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136528== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136528== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136528== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136528== by 0x497836B: setlocale (setlocale.c:337) ==136528== by 0x109058: main (first.c:157) ==136528== === End of file valgrind1534 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/6/valgrind1535 ./libtest/lib1535 http://127.0.0.1:42657/1535 > log/6/stdout1535 2> log/6/stderr1535 1535: 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 1535 === Start of file server.cmd Testnum 1535 === End of file server.cmd === Start of file stderr1535 URL: http://127.0.0.1:42657/1535 === End of file stderr1535 === Start of file valgrind1535 ==136578== ==136578== Process terminating with default action of signal 4 (SIGILL) ==136578== Illegal opcode at address 0x48DC18B ==136578== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136578== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136578== by 0x48DC18B: Curl_open (url.c:519) ==136578== by 0x487CCEF: curl_easy_init (easy.c:368) ==136578== by 0x10909E: UnknownInlinedFun (lib1535.c:38) ==136578== by 0x10909E: UnknownInlinedFun (lib1535.c:30) ==136578== by 0x10909E: main (first.c:178) ==136578== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136578== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136578== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136578== by 0x4A58EC8: tsearch (tsearch.c:290) ==136578== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136578== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136578== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136578== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136578== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136578== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136578== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136578== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136578== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136578== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136578== by 0x497836B: setlocale (setlocale.c:337) ==136578== by 0x109058: main (first.c:157) ==136578== ==136578== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136578== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136578== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136578== by 0x4A58EC8: tsearch (tsearch.c:290) ==136578== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136578== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136578== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136578== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136578== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136578== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136578== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136578== by 0x497836B: setlocale (setlocale.c:337) ==136578== by 0x109058: main (first.c:157) ==136578== ==136578== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136578== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136578== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136578== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136578== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136578== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136578== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136578== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136578== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136578== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136578== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136578== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136578== by 0x497836B: setlocale (setlocale.c:337) ==136578== by 0x109058: main (first.c:157) ==136578== ==136578== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136578== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136578== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136578== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136578== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136578== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136578== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136578== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136578== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136578== by 0x497836B: setlocale (setlocale.c:337) ==136578== by 0x109058: main (first.c:157) ==136578== ==136578== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136578== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136578== by 0x48DC163: Curl_open (url.c:510) ==136578== by 0x487CCEF: curl_easy_init (easy.c:368) ==136578== by 0x10909E: UnknownInlinedFun (lib1535.c:38) ==136578== by 0x10909E: UnknownInlinedFun (lib1535.c:30) ==136578== by 0x10909E: main (first.c:178) ==136578== ==136578== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136578== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136578== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136578== by 0x4A58EC8: tsearch (tsearch.c:290) ==136578== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136578== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136578== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136578== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136578== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136578== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136578== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136578== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136578== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136578== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136578== by 0x497836B: setlocale (setlocale.c:337) ==136578== by 0x109058: main (first.c: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/valgrind1538 ./libtest/lib1538 nothing > log/9/stdout1538 2> log/9/stderr1538 CMD (0): perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1544.pl /startdir/src/curl/tests/.. > log/6/stdout1544 2> log/6/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/2/valgrind1536 ./libtest/lib1536 http://127.0.0.1:44205/1536 > log/2/stdout1536 2> log/2/stderr1536 157) ==136578== ==136578== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136578== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136578== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136578== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136578== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136578== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136578== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136578== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136578== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136578== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136578== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136578== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136578== by 0x497836B: setlocale (setlocale.c:337) ==136578== by 0x109058: main (first.c:157) ==136578== === End of file valgrind1535 * 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/9/valgrind1538 ./libtest/lib1538 nothing > log/9/stdout1538 2> log/9/stderr1538 s------e-v- OK (1315 out of 1513, remaining: 00:15, took 0.637s, duration: 01:40) * starts no server test 1544...[Verify all string options are translated by OS/400 wrapper] perl -I/startdir/src/curl/tests /startdir/src/curl/tests/test1544.pl /startdir/src/curl/tests/.. > log/6/stdout1544 2> log/6/stderr1544 valgrind SKIPPED -------e--- OK (1321 out of 1513, remaining: 00:14, took 0.043s, duration: 01:40) 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/lib1536 http://127.0.0.1:44205/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 server.cmd Testnum 1536 === End of file server.cmd === Start of file stderr1536 URL: http://127.0.0.1:44205/1536 === End of file stderr1536 === Start of file valgrind1536 ==136579== ==136579== Process terminating with default action of signal 4 (SIGILL) ==136579== Illegal opcode at address 0x48DC18B ==136579== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136579== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136579== by 0x48DC18B: Curl_open (url.c:519) ==136579== by 0x487CCEF: curl_easy_init (easy.c:368) ==136579== by 0x10909F: UnknownInlinedFun (lib1536.c:38) ==136579== by 0x10909F: UnknownInlinedFun (lib1536.c:30) ==136579== by 0x10909F: main (first.c:178) ==136579== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136579== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136579== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136579== by 0x4A58EC8: tsearch (tsearch.c:290) ==136579== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136579== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136579== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136579== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136579== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136579== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136579== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136579== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136579== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136579== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136579== by 0x497836B: setlocale (setlocale.c:337) ==136579== by 0x109059: main (first.c:157) ==136579== ==136579== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136579== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136579== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136579== by 0x4A58EC8: tsearch (tsearch.c:290) ==136579== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136579== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136579== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136579== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136579== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136579== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136579== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136579== by 0x497836B: setlocale (setlocale.c:337) ==136579== by 0x109059: main (first.c:157) ==136579== ==136579== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136579== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136579== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136579== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136579== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136579== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136579== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136579== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136579== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136579== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136579== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136579== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136579== by 0x497836B: setlocale (setlocale.c:337) ==136579== by 0x109059: main (first.c:157) ==136579== ==136579== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136579== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136579== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136579== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136579== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136579== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136579== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136579== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136579== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136579== by 0x497836B: setlocale (setlocale.c:337) ==136579== by 0x109059: main (first.c:157) ==136579== ==136579== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136579== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136579== by 0x48DC163: Curl_open (url.c:510) ==136579== by 0x487CCEF: curl_easy_init (easy.c:368) ==136579== by 0x10909F: UnknownInlinedFun (lib1536.c:38) ==136579== by 0x10909F: UnknownInlinedFun (lib1536.c:30) ==136579== by 0x10909F: main (first.c:178) ==136579== ==136579== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136579== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136579== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136579== by 0x4A58EC8: tsearch (tsearch.c:290) ==136579== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136579== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136579== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136579== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136579== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136579== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136579== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136579== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136579== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136579== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136579== by 0x497836B: setlocale (setlocale.c:337) ==136579== by 0x109059: main (first.c:157) ==136579== ==136579== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136579== at 0x4842788: malloc (vg_replace_malloc.c:446) ==1365CMD (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/valgrind1537 ./libtest/lib1537 nothing > log/7/stdout1537 2> log/7/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/8/valgrind1539 ./libtest/lib1539 http://127.0.0.1:33791/1539 > log/8/stdout1539 2> log/8/stderr1539 79== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136579== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136579== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136579== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136579== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136579== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136579== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136579== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136579== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136579== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136579== by 0x497836B: setlocale (setlocale.c:337) ==136579== by 0x109059: main (first.c:157) ==136579== === End of file valgrind1536 * 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/7/valgrind1537 ./libtest/lib1537 nothing > log/7/stdout1537 2> log/7/stderr1537 s------e-v- OK (1314 out of 1513, remaining: 00:15, took 0.888s, duration: 01:40) 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/8/valgrind1539 ./libtest/lib1539 http://127.0.0.1:33791/1539 > log/8/stdout1539 2> log/8/stderr1539 lib1539 returned 132, when expecting 25 1539: exit FAILED == Contents of files in the log/8/ dir after test 1539 === Start of file server.cmd Testnum 1539 === End of file server.cmd === Start of file stderr1539 URL: http://127.0.0.1:33791/1539 === End of file stderr1539 === Start of file valgrind1539 ==136775== ==136775== Process terminating with default action of signal 4 (SIGILL) ==136775== Illegal opcode at address 0x48DC18B ==136775== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136775== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136775== by 0x48DC18B: Curl_open (url.c:519) ==136775== by 0x487CCEF: curl_easy_init (easy.c:368) ==136775== by 0x1090AE: UnknownInlinedFun (lib1514.c:66) ==136775== by 0x1090AE: main (first.c:178) ==136775== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136775== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136775== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136775== by 0x4A58EC8: tsearch (tsearch.c:290) ==136775== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136775== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136775== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136775== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136775== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136775== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136775== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136775== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136775== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136775== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136775== by 0x497836B: setlocale (setlocale.c:337) ==136775== by 0x109056: main (first.c:157) ==136775== ==136775== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136775== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136775== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136775== by 0x4A58EC8: tsearch (tsearch.c:290) ==136775== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136775== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136775== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136775== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136775== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136775== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136775== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136775== by 0x497836B: setlocale (setlocale.c:337) ==136775== by 0x109056: main (first.c:157) ==136775== ==136775== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136775== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136775== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136775== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136775== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136775== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136775== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136775== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136775== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136775== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136775== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136775== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136775== by 0x497836B: setlocale (setlocale.c:337) ==136775== by 0x109056: main (first.c:157) ==136775== ==136775== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136775== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136775== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136775== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136775== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136775== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136775== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136775== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136775== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136775== by 0x497836B: setlocale (setlocale.c:337) ==136775== by 0x109056: main (first.c:157) ==136775== ==136775== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136775== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136775== by 0x48DC163: Curl_open (url.c:510) ==136775== by 0x487CCEF: curl_easy_init (easy.c:368) ==136775== by 0x1090AE: UnknownInlinedFun (lib1514.c:66) ==136775== by 0x1090AE: main (first.c:178) ==136775== ==136775== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136775== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136775== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136775== by 0x4A58EC8: tsearch (tsearch.c:290) ==136775== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136775== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136775== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136775== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136775== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136775== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136775== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136775== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136775== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136775== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136775== by 0x497836B: setlocale (setlocale.c:337) ==136775== by 0x109056: main (first.c:157) ==136775== ==136775== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136775== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136775== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136775== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136775== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136775== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136775== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136775== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136775== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136775== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136775== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136775== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==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/12/valgrind1540 ./libtest/lib1540 http://127.0.0.1:44175/1540 > log/12/stdout1540 2> log/12/stderr1540 RUN: Process with pid 75083 forced to die with SIGKILL 36775== by 0x497836B: setlocale (setlocale.c:337) ==136775== by 0x109056: main (first.c:157) ==136775== === End of file valgrind1539 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/12/valgrind1540 ./libtest/lib1540 http://127.0.0.1:44175/1540 > log/12/stdout1540 2> log/12/stderr1540 1540: 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 1540 === Start of file server.cmd writedelay: 10 Testnum 1540 === End of file server.cmd === Start of file stderr1540 URL: http://127.0.0.1:44175/1540 === End of file stderr1540 === Start of file valgrind1540 ==136787== ==136787== Process terminating with default action of signal 4 (SIGILL) ==136787== Illegal opcode at address 0x48DC18B ==136787== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136787== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136787== by 0x48DC18B: Curl_open (url.c:519) ==136787== by 0x487CCEF: curl_easy_init (easy.c:368) ==136787== by 0x1090C9: UnknownInlinedFun (lib1540.c:97) ==136787== by 0x1090C9: main (first.c:178) ==136787== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136787== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136787== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136787== by 0x4A58EC8: tsearch (tsearch.c:290) ==136787== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136787== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136787== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136787== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136787== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136787== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136787== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136787== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136787== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136787== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136787== by 0x497836B: setlocale (setlocale.c:337) ==136787== by 0x109058: main (first.c:157) ==136787== ==136787== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136787== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136787== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136787== by 0x4A58EC8: tsearch (tsearch.c:290) ==136787== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136787== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136787== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136787== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136787== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136787== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136787== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136787== by 0x497836B: setlocale (setlocale.c:337) ==136787== by 0x109058: main (first.c:157) ==136787== ==136787== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136787== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136787== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136787== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136787== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136787== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136787== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136787== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136787== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136787== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136787== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136787== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136787== by 0x497836B: setlocale (setlocale.c:337) ==136787== by 0x109058: main (first.c:157) ==136787== ==136787== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136787== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136787== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136787== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136787== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136787== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136787== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136787== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136787== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136787== by 0x497836B: setlocale (setlocale.c:337) ==136787== by 0x109058: main (first.c:157) ==136787== ==136787== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136787== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136787== by 0x48DC163: Curl_open (url.c:510) ==136787== by 0x487CCEF: curl_easy_init (easy.c:368) ==136787== by 0x1090C9: UnknownInlinedFun (lib1540.c:97) ==136787== by 0x1090C9: main (first.c:178) ==136787== ==136787== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136787== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136787== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136787== by 0x4A58EC8: tsearch (tsearch.c:290) ==136787== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136787== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136787== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136787== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136787== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136787== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136787== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136787== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136787== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136787== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136787== by 0x497836B: setlocale (setlocale.c:337) ==136787== by 0x109058: main (first.c:157) ==136787== ==136787== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136787== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136787== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136787== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136787== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136787== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136787== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136787== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136787== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136787== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136787== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136787== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136787== by 0x497836B: setlocale (setlocale.c:337) ==136787== by 0x109058: main (first.c:157) ==136787== === End of file valgrind1540 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/3/valgrind1475 ../src/curl -q --output log/3/curl1475.out --include --trace-ascii log/3/trace1475 --trace-time http://127.0.0.1:46313/1475 -C - -f > log/3/stdout1475 2> log/3/stderr1475 1475: 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 1475 === 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 11:17:16.878768 exit_signal_handler: 15 11: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/5/valgrind1541 ./libtest/lib1541 http://127.0.0.1:33519/1541 > log/5/stdout1541 2> log/5/stderr1541 CMD (33792): ../libtool --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/valgrind1542 ./libtest/lib1542 http://127.0.0.1:41947/1542 > log/4/stdout1542 2> log/4/stderr1542 16.878845 signalled to die 11:17:16.878903 ========> IPv4 sws (port 46313 pid: 75083) exits with signal (15) 11:17:16.878913 ========> sws quits === End of file http_server.log === Start of file server.cmd Testnum 1475 === End of file server.cmd === Start of file valgrind1475 ==134386== ==134386== Process terminating with default action of signal 4 (SIGILL) ==134386== Illegal opcode at address 0x10B06D ==134386== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==134386== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1475 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/5/valgrind1541 ./libtest/lib1541 http://127.0.0.1:33519/1541 > log/5/stdout1541 2> log/5/stderr1541 1541: 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 1541 === Start of file server.cmd writedelay: 10 Testnum 1541 === End of file server.cmd === Start of file stderr1541 URL: http://127.0.0.1:33519/1541 === End of file stderr1541 === Start of file valgrind1541 ==136873== ==136873== Process terminating with default action of signal 4 (SIGILL) ==136873== Illegal opcode at address 0x48DC18B ==136873== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136873== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136873== by 0x48DC18B: Curl_open (url.c:519) ==136873== by 0x487CCEF: curl_easy_init (easy.c:368) ==136873== by 0x1090D1: UnknownInlinedFun (lib1541.c:125) ==136873== by 0x1090D1: main (first.c:178) ==136873== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136873== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136873== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136873== by 0x4A58EC8: tsearch (tsearch.c:290) ==136873== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136873== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136873== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136873== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136873== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136873== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136873== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136873== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136873== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136873== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136873== by 0x497836B: setlocale (setlocale.c:337) ==136873== by 0x109058: main (first.c:157) ==136873== ==136873== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136873== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136873== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136873== by 0x4A58EC8: tsearch (tsearch.c:290) ==136873== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136873== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136873== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136873== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136873== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136873== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136873== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136873== by 0x497836B: setlocale (setlocale.c:337) ==136873== by 0x109058: main (first.c:157) ==136873== ==136873== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136873== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136873== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136873== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136873== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136873== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136873== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136873== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136873== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136873== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136873== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136873== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136873== by 0x497836B: setlocale (setlocale.c:337) ==136873== by 0x109058: main (first.c:157) ==136873== ==136873== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136873== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136873== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136873== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136873== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136873== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136873== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136873== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136873== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136873== by 0x497836B: setlocale (setlocale.c:337) ==136873== by 0x109058: main (first.c:157) ==136873== ==136873== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136873== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136873== by 0x48DC163: Curl_open (url.c:510) ==136873== by 0x487CCEF: curl_easy_init (easy.c:368) ==136873== by 0x1090D1: UnknownInlinedFun (lib1541.c:125) ==136873== by 0x1090D1: main (first.c:178) ==136873== ==136873== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136873== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136873== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136873== by 0x4A58EC8: tsearch (tsearch.c:290) ==136873== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136873== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136873== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136873== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136873== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136873== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136873== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136873== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136873== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136873== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136873== by 0x497836B: setlocale (setlocale.c:337) ==136873== by 0x109058: main (first.c:157) ==136873== ==136873== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136873== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136873== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136873== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136873== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136873== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136873== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136873== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136873== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136873== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136873== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136873== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136873== by 0x497836B: setlocale (setlocale.c:337) ==136873== by 0x109058: main (first.c:157) ==136873== === End of file valgrind1541 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/4/valgrind1542 ./libtest/lib1542 http://127.0.0.1:41947/1542 > log/4/stdout1542 2> log/4/stderr1542 1542: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? CMD (33792): ../libtool --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/valgrind1543 ./libtest/lib1543 "http://127.0.0.1:36145/ /with/ space/ /file" > log/10/stdout1543 2> log/10/stderr1543 Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1542 === Start of file server.cmd Testnum 1542 === End of file server.cmd === Start of file stderr1542 URL: http://127.0.0.1:41947/1542 === End of file stderr1542 === Start of file valgrind1542 ==136874== ==136874== Process terminating with default action of signal 4 (SIGILL) ==136874== Illegal opcode at address 0x48DC18B ==136874== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136874== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136874== by 0x48DC18B: Curl_open (url.c:519) ==136874== by 0x487CCEF: curl_easy_init (easy.c:368) ==136874== by 0x109091: UnknownInlinedFun (lib1542.c:46) ==136874== by 0x109091: UnknownInlinedFun (lib1542.c:39) ==136874== by 0x109091: main (first.c:178) ==136874== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136874== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136874== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136874== by 0x4A58EC8: tsearch (tsearch.c:290) ==136874== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136874== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136874== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136874== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136874== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136874== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136874== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136874== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136874== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136874== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136874== by 0x497836B: setlocale (setlocale.c:337) ==136874== by 0x10904B: main (first.c:157) ==136874== ==136874== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136874== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136874== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136874== by 0x4A58EC8: tsearch (tsearch.c:290) ==136874== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136874== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136874== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136874== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136874== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136874== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136874== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136874== by 0x497836B: setlocale (setlocale.c:337) ==136874== by 0x10904B: main (first.c:157) ==136874== ==136874== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136874== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136874== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136874== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136874== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136874== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136874== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136874== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136874== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136874== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136874== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136874== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136874== by 0x497836B: setlocale (setlocale.c:337) ==136874== by 0x10904B: main (first.c:157) ==136874== ==136874== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136874== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136874== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136874== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136874== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136874== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136874== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136874== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136874== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136874== by 0x497836B: setlocale (setlocale.c:337) ==136874== by 0x10904B: main (first.c:157) ==136874== ==136874== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136874== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136874== by 0x48DC163: Curl_open (url.c:510) ==136874== by 0x487CCEF: curl_easy_init (easy.c:368) ==136874== by 0x109091: UnknownInlinedFun (lib1542.c:46) ==136874== by 0x109091: UnknownInlinedFun (lib1542.c:39) ==136874== by 0x109091: main (first.c:178) ==136874== ==136874== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136874== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136874== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136874== by 0x4A58EC8: tsearch (tsearch.c:290) ==136874== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136874== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136874== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136874== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136874== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136874== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136874== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136874== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136874== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136874== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136874== by 0x497836B: setlocale (setlocale.c:337) ==136874== by 0x10904B: main (first.c:157) ==136874== ==136874== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136874== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136874== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136874== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136874== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136874== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136874== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136874== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136874== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136874== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136874== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136874== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136874== by 0x497836B: setlocale (setlocale.c:337) ==136874== by 0x10904B: main (first.c:157) ==136874== === End of file valgrind1542 CMD (33792): ../libtool --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/valgrind1545 ./libtest/lib1545 http://127.0.0.1:40247/1545 > log/9/stdout1545 2> log/9/stderr1545 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/10/valgrind1543 ./libtest/lib1543 "http://127.0.0.1:36145/ /with/ space/ /file" > log/10/stdout1543 2> log/10/stderr1543 1543: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:22.741675210 +0200 +++ log/10/check-generated 2024-05-23 11:17:22.741675210 +0200 @@ -1,5 +0,0 @@ -res 0[LF] -status 200[LF] -redirects 1[LF] -effectiveurl http://127.0.0.1:36145/%20/with/%20space/15430002[LF] -redirecturl blank[LF] == Contents of files in the log/10/ dir after test 1543 === Start of file check-expected res 0[LF] status 200[LF] redirects 1[LF] effectiveurl http://127.0.0.1:36145/%20/with/%20space/15430002[LF] redirecturl blank[LF] === End of file check-expected === Start of file server.cmd Testnum 1543 === End of file server.cmd === Start of file stderr1543 URL: http://127.0.0.1:36145/ /with/ space/ /file === End of file stderr1543 === Start of file valgrind1543 ==136971== ==136971== Process terminating with default action of signal 4 (SIGILL) ==136971== Illegal opcode at address 0x48DC18B ==136971== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==136971== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==136971== by 0x48DC18B: Curl_open (url.c:519) ==136971== by 0x487CCEF: curl_easy_init (easy.c:368) ==136971== by 0x109096: UnknownInlinedFun (lib1518.c:51) ==136971== by 0x109096: main (first.c:178) ==136971== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==136971== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136971== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136971== by 0x4A58EC8: tsearch (tsearch.c:290) ==136971== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136971== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136971== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136971== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136971== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136971== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136971== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136971== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136971== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136971== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136971== by 0x497836B: setlocale (setlocale.c:337) ==136971== by 0x109056: main (first.c:157) ==136971== ==136971== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==136971== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136971== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136971== by 0x4A58EC8: tsearch (tsearch.c:290) ==136971== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136971== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136971== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136971== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136971== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136971== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136971== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136971== by 0x497836B: setlocale (setlocale.c:337) ==136971== by 0x109056: main (first.c:157) ==136971== ==136971== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==136971== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136971== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136971== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136971== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136971== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136971== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136971== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==136971== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136971== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136971== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136971== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136971== by 0x497836B: setlocale (setlocale.c:337) ==136971== by 0x109056: main (first.c:157) ==136971== ==136971== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==136971== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136971== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136971== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==136971== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==136971== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136971== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136971== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136971== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136971== by 0x497836B: setlocale (setlocale.c:337) ==136971== by 0x109056: main (first.c:157) ==136971== ==136971== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==136971== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==136971== by 0x48DC163: Curl_open (url.c:510) ==136971== by 0x487CCEF: curl_easy_init (easy.c:368) ==136971== by 0x109096: UnknownInlinedFun (lib1518.c:51) ==136971== by 0x109096: main (first.c:178) ==136971== ==136971== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==136971== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136971== by 0x4A58EC8: __tsearch (tsearch.c:337) ==136971== by 0x4A58EC8: tsearch (tsearch.c:290) ==136971== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==136971== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136971== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136971== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136971== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136971== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136971== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136971== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136971== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136971== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136971== by 0x497836B: setlocale (setlocale.c:337) ==136971== by 0x109056: main (first.c:157) ==136971== ==136971== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==136971== at 0x4842788: malloc (vg_replace_malloc.c:446) ==136971== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==136971== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==136971== by 0x496C9A2: add_alias (gconv_conf.c:178) ==136971== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136971== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136971== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==136971== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136971== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136971== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==136971== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==136971== by 0x497836B: setlocale (setlocale.c:337) ==136971== by 0x109056: main (first.c:157) ==136971== === End of file valgrind1543 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/9/valgrind1545 ./libtest/lib1545 http://127.0.0.1:40247/1545 > log/9/stdout1545 2> log/9/stderr1545 lib1545 returned 132, when expecting 0 1545: exit FAILED == Contents of files in the log/9/ dir after test 1545 === Start of file server.cmd Testnum 1545 === End of file server.cmd === Start of file stderr1545 URL: http://127.0.0.1:40247/1545 === End of file stderrCMD (33792): ../libtool --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/valgrind1550 ./libtest/lib1550 http://127.0.0.1:47/1550 > log/6/stdout1550 2> log/6/stderr1550 1545 === Start of file valgrind1545 ==137018== ==137018== Process terminating with default action of signal 4 (SIGILL) ==137018== Illegal opcode at address 0x48DC18B ==137018== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137018== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137018== by 0x48DC18B: Curl_open (url.c:519) ==137018== by 0x487CCEF: curl_easy_init (easy.c:368) ==137018== by 0x1090AB: UnknownInlinedFun (lib1545.c:38) ==137018== by 0x1090AB: main (first.c:178) ==137018== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137018== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137018== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137018== by 0x4A58EC8: tsearch (tsearch.c:290) ==137018== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137018== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137018== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137018== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137018== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137018== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137018== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137018== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137018== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137018== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137018== by 0x497836B: setlocale (setlocale.c:337) ==137018== by 0x109056: main (first.c:157) ==137018== ==137018== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137018== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137018== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137018== by 0x4A58EC8: tsearch (tsearch.c:290) ==137018== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137018== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137018== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137018== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137018== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137018== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137018== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137018== by 0x497836B: setlocale (setlocale.c:337) ==137018== by 0x109056: main (first.c:157) ==137018== ==137018== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137018== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137018== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137018== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137018== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137018== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137018== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137018== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137018== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137018== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137018== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137018== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137018== by 0x497836B: setlocale (setlocale.c:337) ==137018== by 0x109056: main (first.c:157) ==137018== ==137018== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137018== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137018== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137018== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137018== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137018== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137018== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137018== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137018== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137018== by 0x497836B: setlocale (setlocale.c:337) ==137018== by 0x109056: main (first.c:157) ==137018== ==137018== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137018== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137018== by 0x48DC163: Curl_open (url.c:510) ==137018== by 0x487CCEF: curl_easy_init (easy.c:368) ==137018== by 0x1090AB: UnknownInlinedFun (lib1545.c:38) ==137018== by 0x1090AB: main (first.c:178) ==137018== ==137018== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137018== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137018== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137018== by 0x4A58EC8: tsearch (tsearch.c:290) ==137018== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137018== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137018== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137018== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137018== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137018== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137018== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137018== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137018== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137018== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137018== by 0x497836B: setlocale (setlocale.c:337) ==137018== by 0x109056: main (first.c:157) ==137018== ==137018== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137018== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137018== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137018== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137018== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137018== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137018== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137018== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137018== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137018== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137018== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137018== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137018== by 0x497836B: setlocale (setlocale.c:337) ==137018== by 0x109056: main (first.c:157) ==137018== === End of file valgrind1545 * starts no server test 1550...[verify setting pipeling 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/6/valgrind1550 ./libtest/lib1550 http://127.0.0.1:47/1550 > log/6/stdout1550 2> log/6/stderr1550 lib1550 returned 132, when expecting 0 1550: exit FAILED == Contents of files in the log/6/ dir after test 1550 === 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 ==137064== ==137064== Process terminating with default action of signal 4 (SIGILL) ==137064== Illegal opcode at address 0x48DC18B ==137064== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137064== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137064== by 0x48DC18B: Curl_open (url.c:519) ==137064== by 0x487CCEF: curl_easy_init (easy.c:368) ==137064== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137064== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137064== by 0x109086: UnknownInlinedFun (lib1550.c:40) ==137064== by 0x109086: UnknownInlinedFun (lib1550.c:30) ==137064== by 0x109086: main (first.c:178) ==137064== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137064== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137064== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137064== by 0x4A58EC8: tsearch (tsearch.c:290) ==137064== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137064== by 0x496C9A2: 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/2/valgrind1551 ./libtest/lib1551 http://127.0.0.1:44205/1551 > log/2/stdout1551 2> log/2/stderr1551 ==137064== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137064== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137064== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137064== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137064== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137064== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137064== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137064== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137064== by 0x497836B: setlocale (setlocale.c:337) ==137064== by 0x109047: main (first.c:157) ==137064== ==137064== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137064== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137064== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137064== by 0x4A58EC8: tsearch (tsearch.c:290) ==137064== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137064== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137064== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137064== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137064== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137064== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137064== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137064== by 0x497836B: setlocale (setlocale.c:337) ==137064== by 0x109047: main (first.c:157) ==137064== ==137064== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137064== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137064== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137064== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137064== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137064== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137064== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137064== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137064== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137064== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137064== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137064== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137064== by 0x497836B: setlocale (setlocale.c:337) ==137064== by 0x109047: main (first.c:157) ==137064== ==137064== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137064== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137064== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137064== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137064== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137064== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137064== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137064== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137064== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137064== by 0x497836B: setlocale (setlocale.c:337) ==137064== by 0x109047: main (first.c:157) ==137064== ==137064== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137064== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137064== by 0x48DC163: Curl_open (url.c:510) ==137064== by 0x487CCEF: curl_easy_init (easy.c:368) ==137064== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137064== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137064== by 0x109086: UnknownInlinedFun (lib1550.c:40) ==137064== by 0x109086: UnknownInlinedFun (lib1550.c:30) ==137064== by 0x109086: main (first.c:178) ==137064== ==137064== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137064== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137064== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137064== by 0x4A58EC8: tsearch (tsearch.c:290) ==137064== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137064== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137064== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137064== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137064== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137064== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137064== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137064== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137064== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137064== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137064== by 0x497836B: setlocale (setlocale.c:337) ==137064== by 0x109047: main (first.c:157) ==137064== ==137064== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137064== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137064== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137064== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137064== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137064== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137064== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137064== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137064== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137064== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137064== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137064== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137064== by 0x497836B: setlocale (setlocale.c:337) ==137064== by 0x109047: main (first.c:157) ==137064== === End of file valgrind1550 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/2/valgrind1551 ./libtest/lib1551 http://127.0.0.1:44205/1551 > log/2/stdout1551 2> log/2/stderr1551 1551: 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 1551 === Start of file server.cmd Testnum 1551 === End of file server.cmd === Start of file stderr1551 URL: http://127.0.0.1:44205/1551 === End of file stderr1551 === Start of file valgrind1551 ==137093== ==137093== Process terminating with default action of signal 4 (SIGILL) ==137093== Illegal opcode at address 0x48DC18B ==137093== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137093== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137093== by 0x48DC18B: Curl_open (url.c:519) ==137093== by 0x487CCEF: curl_easy_init (easy.c:368) ==137093== by 0x10908B: UnknownInlinedFun (lib1551.c:36) ==137093== by 0x10908B: UnknownInlinedFun (lib1551.c:30) ==137093== by 0x10908B: main (first.c:178) ==137093== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137093== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137093== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137093== by 0x4A58EC8: tsearch (tsearch.c:290) ==137093== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137093== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137093== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137093== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137093== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137093== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137093== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137093== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137093== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137093== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137093== by 0x497836B: setlocale (setlocale.c:337) ==137093== by 0x109045: main (first.c:157) ==137093== ==137093== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==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/valgrind1552 ./libtest/lib1552 'imap://127.0.0.1:39443/1552/;MAILINDEX=1' > log/7/stdout1552 2> log/7/stderr1552 37093== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137093== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137093== by 0x4A58EC8: tsearch (tsearch.c:290) ==137093== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137093== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137093== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137093== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137093== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137093== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137093== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137093== by 0x497836B: setlocale (setlocale.c:337) ==137093== by 0x109045: main (first.c:157) ==137093== ==137093== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137093== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137093== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137093== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137093== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137093== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137093== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137093== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137093== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137093== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137093== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137093== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137093== by 0x497836B: setlocale (setlocale.c:337) ==137093== by 0x109045: main (first.c:157) ==137093== ==137093== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137093== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137093== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137093== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137093== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137093== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137093== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137093== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137093== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137093== by 0x497836B: setlocale (setlocale.c:337) ==137093== by 0x109045: main (first.c:157) ==137093== ==137093== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137093== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137093== by 0x48DC163: Curl_open (url.c:510) ==137093== by 0x487CCEF: curl_easy_init (easy.c:368) ==137093== by 0x10908B: UnknownInlinedFun (lib1551.c:36) ==137093== by 0x10908B: UnknownInlinedFun (lib1551.c:30) ==137093== by 0x10908B: main (first.c:178) ==137093== ==137093== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137093== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137093== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137093== by 0x4A58EC8: tsearch (tsearch.c:290) ==137093== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137093== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137093== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137093== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137093== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137093== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137093== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137093== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137093== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137093== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137093== by 0x497836B: setlocale (setlocale.c:337) ==137093== by 0x109045: main (first.c:157) ==137093== ==137093== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137093== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137093== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137093== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137093== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137093== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137093== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137093== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137093== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137093== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137093== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137093== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137093== by 0x497836B: setlocale (setlocale.c:337) ==137093== by 0x109045: main (first.c:157) ==137093== === End of file valgrind1551 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/7/valgrind1552 ./libtest/lib1552 'imap://127.0.0.1:39443/1552/;MAILINDEX=1' > log/7/stdout1552 2> log/7/stderr1552 lib1552 returned 132, when expecting 0 1552: exit FAILED == Contents of files in the log/7/ dir after test 1552 === Start of file server.cmd Testnum 1552 === End of file server.cmd === Start of file stderr1552 URL: imap://127.0.0.1:39443/1552/;MAILINDEX=1 === End of file stderr1552 === Start of file valgrind1552 ==137168== ==137168== Process terminating with default action of signal 4 (SIGILL) ==137168== Illegal opcode at address 0x48DC18B ==137168== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137168== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137168== by 0x48DC18B: Curl_open (url.c:519) ==137168== by 0x487CCEF: curl_easy_init (easy.c:368) ==137168== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137168== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137168== by 0x1090B2: UnknownInlinedFun (lib1552.c:46) ==137168== by 0x1090B2: UnknownInlinedFun (lib1552.c:32) ==137168== by 0x1090B2: main (first.c:178) ==137168== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137168== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137168== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137168== by 0x4A58EC8: tsearch (tsearch.c:290) ==137168== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137168== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137168== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137168== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137168== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137168== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137168== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137168== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137168== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137168== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137168== by 0x497836B: setlocale (setlocale.c:337) ==137168== by 0x109059: main (first.c:157) ==137168== ==137168== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137168== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137168== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137168== by 0x4A58EC8: tsearch (tsearch.c:290) ==137168== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137168== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137168== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137168== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137168== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137168== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137168== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137168== by 0x497836B: setlocale (setlocale.c:337) ==137168== by 0x109059: main (first.c:157) ==137168== ==137168== 681 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/8/valgrind1553 ./libtest/lib1553 imap://non-existing-host.haxx.se:34637/1553 > log/8/stdout1553 2> log/8/stderr1553 y lost in loss record 612 of 651 ==137168== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137168== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137168== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137168== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137168== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137168== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137168== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137168== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137168== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137168== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137168== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137168== by 0x497836B: setlocale (setlocale.c:337) ==137168== by 0x109059: main (first.c:157) ==137168== ==137168== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137168== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137168== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137168== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137168== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137168== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137168== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137168== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137168== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137168== by 0x497836B: setlocale (setlocale.c:337) ==137168== by 0x109059: main (first.c:157) ==137168== ==137168== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137168== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137168== by 0x48DC163: Curl_open (url.c:510) ==137168== by 0x487CCEF: curl_easy_init (easy.c:368) ==137168== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137168== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137168== by 0x1090B2: UnknownInlinedFun (lib1552.c:46) ==137168== by 0x1090B2: UnknownInlinedFun (lib1552.c:32) ==137168== by 0x1090B2: main (first.c:178) ==137168== ==137168== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137168== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137168== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137168== by 0x4A58EC8: tsearch (tsearch.c:290) ==137168== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137168== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137168== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137168== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137168== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137168== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137168== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137168== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137168== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137168== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137168== by 0x497836B: setlocale (setlocale.c:337) ==137168== by 0x109059: main (first.c:157) ==137168== ==137168== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137168== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137168== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137168== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137168== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137168== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137168== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137168== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137168== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137168== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137168== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137168== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137168== by 0x497836B: setlocale (setlocale.c:337) ==137168== by 0x109059: main (first.c:157) ==137168== === End of file valgrind1552 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/8/valgrind1553 ./libtest/lib1553 imap://non-existing-host.haxx.se:34637/1553 > log/8/stdout1553 2> log/8/stderr1553 lib1553 returned 132, when expecting 0 1553: exit FAILED == Contents of files in the log/8/ dir after test 1553 === Start of file server.cmd Testnum 1553 === End of file server.cmd === Start of file stderr1553 URL: imap://non-existing-host.haxx.se:34637/1553 === End of file stderr1553 === Start of file valgrind1553 ==137219== ==137219== Process terminating with default action of signal 4 (SIGILL) ==137219== Illegal opcode at address 0x48DC18B ==137219== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137219== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137219== by 0x48DC18B: Curl_open (url.c:519) ==137219== by 0x487CCEF: curl_easy_init (easy.c:368) ==137219== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137219== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137219== by 0x1090B1: UnknownInlinedFun (lib1553.c:60) ==137219== by 0x1090B1: UnknownInlinedFun (lib1553.c:45) ==137219== by 0x1090B1: main (first.c:178) ==137219== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137219== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137219== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137219== by 0x4A58EC8: tsearch (tsearch.c:290) ==137219== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137219== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137219== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137219== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137219== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137219== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137219== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137219== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137219== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137219== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137219== by 0x497836B: setlocale (setlocale.c:337) ==137219== by 0x109058: main (first.c:157) ==137219== ==137219== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137219== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137219== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137219== by 0x4A58EC8: tsearch (tsearch.c:290) ==137219== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137219== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137219== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137219== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137219== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137219== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137219== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137219== by 0x497836B: setlocale (setlocale.c:337) ==137219== by 0x109058: main (first.c:157) ==137219== ==137219== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137219== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137219== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137219== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137219== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137219== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137219== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137219== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137219== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137219== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137219== by 0x496B88C: __gconv_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/12/valgrind1554 ./libtest/lib1554 http://127.0.0.1:44175/1554 > log/12/stdout1554 2> log/12/stderr1554 mpare_alias (gconv_db.c:692) ==137219== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137219== by 0x497836B: setlocale (setlocale.c:337) ==137219== by 0x109058: main (first.c:157) ==137219== ==137219== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137219== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137219== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137219== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137219== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137219== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137219== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137219== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137219== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137219== by 0x497836B: setlocale (setlocale.c:337) ==137219== by 0x109058: main (first.c:157) ==137219== ==137219== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137219== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137219== by 0x48DC163: Curl_open (url.c:510) ==137219== by 0x487CCEF: curl_easy_init (easy.c:368) ==137219== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137219== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137219== by 0x1090B1: UnknownInlinedFun (lib1553.c:60) ==137219== by 0x1090B1: UnknownInlinedFun (lib1553.c:45) ==137219== by 0x1090B1: main (first.c:178) ==137219== ==137219== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137219== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137219== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137219== by 0x4A58EC8: tsearch (tsearch.c:290) ==137219== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137219== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137219== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137219== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137219== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137219== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137219== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137219== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137219== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137219== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137219== by 0x497836B: setlocale (setlocale.c:337) ==137219== by 0x109058: main (first.c:157) ==137219== ==137219== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137219== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137219== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137219== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137219== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137219== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137219== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137219== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137219== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137219== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137219== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137219== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137219== by 0x497836B: setlocale (setlocale.c:337) ==137219== by 0x109058: main (first.c:157) ==137219== === End of file valgrind1553 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/12/valgrind1554 ./libtest/lib1554 http://127.0.0.1:44175/1554 > log/12/stdout1554 2> log/12/stderr1554 1554: data FAILED: --- log/12/check-expected 2024-05-23 11:17:23.198351258 +0200 +++ log/12/check-generated 2024-05-23 11:17:23.198351258 +0200 @@ -1,61 +0,0 @@ --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] -run 1: foobar and so on fun![LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] -run 1: foobar and so on fun![LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] -run 1: foobar and so on fun![LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] --> Mutex lock[LF] -<- Mutex unlock[LF] == Contents of files in the log/12/ dir after test 1554 === Start of file check-expected -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] run 1: foobar and so on fun![LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] run 1: foobar and so on fun![LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] run 1: foobar and so on fun![LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] -> Mutex lock[LF] <- Mutex unlock[LF] === End of file check-expected === Start of file server.cmd Testnum 1554 === End of file server.cmd === Start of file stderr1554 URL: http://127.0.0.1:44175/1554 === End of file stderr1554 === Start of file valgrind1554 ==137246== ==137246== Process terminating with default action of signal 4 (SIGILL) ==137246== Illegal opcode at address 0x48DC18B ==137246== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137246== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137246== by 0x48DC18B: Curl_open (url.c:519) ==137246== by 0x487CCEF: curl_easy_init (easy.c:368) ==137246== by 0x48D24A1: UnknownInlinedFun (conncache.c:106) ==137246== by 0x48D24A1: curl_share_setopt (share.c:122) ==137246== by 0x1090B1: UnknownInlinedFun (lib1554.c:60) ==137246== by 0x1090B1: UnknownInlinedFun (lib1554.c:46) ==137246== by 0x1090B1: main (first.c:178) ==137246== 408 bytes in 17 blocks are possibly lost in loss record 601 of 651 ==137246== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137246== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137246== by 0x4A58EC8: tsearch (tsearch.c:290) ==137246== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137246== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137246== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137246== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137246== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137246== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137246== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137246== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137246== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137246== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137246== by 0x497836B: setlocale (setlocale.c:337) ==137246== by 0x10904B: main (first.c:157) ==137246== ==137246== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137246== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137246== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137246== by 0x4A58EC8: tsearch (tsearch.c:290) ==137246== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137246== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137246== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137246== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137246== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137246== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137246== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137246== by 0x497836B: setlocale (setlocale.c:337) ==137246== by 0x10904B: main (first.c:157) ==137246== ==137246== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137246== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137246== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137246== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137246== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137246== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137246== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137246== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137246== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137246== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137246== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137246== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137246== by 0x497836B: setlocale (setlocale.c:337) ==137246== by 0x10904B: main (first.c:157) ==137246== ==137246== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137246== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137246== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137246== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137246== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137246== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137246== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137246== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137246== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137246== by 0x497836B: setlocale (setlocale.c:337) ==137246== by 0x10904B: main (first.c:157) ==137246== ==137246== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137246== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137246== by 0x48DC163: Curl_open (url.c:510) ==137246== by 0x487CCEF: curl_easy_init (easy.c:368) ==137246== by 0x48D24A1: UnknownInlinedFun (conncache.c:106) ==137246== by 0x48D24A1: curl_share_setopt (share.c:122) ==137246== by 0x1090B1: UnknownInlinedFun (lib1554.c:60) ==137246== by 0x1090B1: UnknownInlinedFun (lib1554.c:46) ==137246== by 0x1090B1: main (first.c:178) ==137246== ==137246== 11,664 bytes in 486 blocks are possibly lost in loss 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/6/valgrind1563 ../src/curl -q --output log/6/curl1563.out --include --trace-ascii log/6/trace1563 --trace-time http://127.0.0.1:42657/15630001 -L -H "Host: www.example.com" > log/6/stdout1563 2> log/6/stderr1563 CMD (33792): ../libtool --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/valgrind1556 ./libtest/lib1556 http://127.0.0.1:33519/1556 > log/5/stdout1556 2> log/5/stderr1556 ord 648 of 651 ==137246== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137246== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137246== by 0x4A58EC8: tsearch (tsearch.c:290) ==137246== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137246== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137246== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137246== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137246== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137246== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137246== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137246== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137246== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137246== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137246== by 0x497836B: setlocale (setlocale.c:337) ==137246== by 0x10904B: main (first.c:157) ==137246== ==137246== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137246== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137246== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137246== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137246== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137246== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137246== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137246== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137246== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137246== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137246== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137246== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137246== by 0x497836B: setlocale (setlocale.c:337) ==137246== by 0x10904B: main (first.c:157) ==137246== === End of file valgrind1554 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/6/valgrind1563 ../src/curl -q --output log/6/curl1563.out --include --trace-ascii log/6/trace1563 --trace-time http://127.0.0.1:42657/15630001 -L -H "Host: www.example.com" > log/6/stdout1563 2> log/6/stderr1563 1563: 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 1563 === Start of file server.cmd Testnum 1563 === End of file server.cmd === Start of file valgrind1563 ==137484== ==137484== Process terminating with default action of signal 4 (SIGILL) ==137484== Illegal opcode at address 0x10B06D ==137484== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==137484== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1563 CMD (33792): ../libtool --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/valgrind1557 ./libtest/lib1557 nothing > log/4/stdout1557 2> log/4/stderr1557 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/5/valgrind1556 ./libtest/lib1556 http://127.0.0.1:33519/1556 > log/5/stdout1556 2> log/5/stderr1556 1556: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:23.388355161 +0200 +++ log/5/check-generated 2024-05-23 11:17:23.388355161 +0200 @@ -1,2 +0,0 @@ --foo-[LF] -Max = 100009[LF] == Contents of files in the log/5/ dir after test 1556 === Start of file check-expected -foo-[LF] Max = 100009[LF] === End of file check-expected === Start of file server.cmd Testnum 1556 === End of file server.cmd === Start of file stderr1556 URL: http://127.0.0.1:33519/1556 === End of file stderr1556 === Start of file valgrind1556 ==137322== ==137322== Process terminating with default action of signal 4 (SIGILL) ==137322== Illegal opcode at address 0x48DC18B ==137322== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137322== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137322== by 0x48DC18B: Curl_open (url.c:519) ==137322== by 0x487CCEF: curl_easy_init (easy.c:368) ==137322== by 0x1090A3: UnknownInlinedFun (lib1556.c:56) ==137322== by 0x1090A3: main (first.c:178) ==137322== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137322== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137322== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137322== by 0x4A58EC8: tsearch (tsearch.c:290) ==137322== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137322== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137322== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137322== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137322== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137322== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137322== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137322== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137322== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137322== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137322== by 0x497836B: setlocale (setlocale.c:337) ==137322== by 0x109056: main (first.c:157) ==137322== ==137322== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137322== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137322== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137322== by 0x4A58EC8: tsearch (tsearch.c:290) ==137322== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137322== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137322== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137322== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137322== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137322== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137322== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137322== by 0x497836B: setlocale (setlocale.c:337) ==137322== by 0x109056: main (first.c:157) ==137322== ==137322== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137322== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137322== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137322== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137322== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137322== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137322== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137322== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137322== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137322== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137322== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137322== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137322== by 0x497836B: setlocale (setlocale.c:337) ==137322== by 0x109056: main (first.c:157) ==137322== ==137322== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137322== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137322== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137322== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137322== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137322== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137322== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137322== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137322== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137322== by 0x497836B: setlocale (setlocale.c:337) ==137322== by 0x109056: main (first.c:157) ==137322== ==137322== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137322== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137322== by 0x48DC163: Curl_open (url.c:510) ==137322== by 0x487CCEF: curl_easy_init (easy.c:368) ==137322== by 0x1090A3: UnknownInlinedFun (lib1556.c:56) ==137322== by 0x1090A3: main (first.c:178) ==137322== ==137322== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137322== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137322== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137322== by 0x4A58EC8: tsearch (tsearch.c:290) ==137322== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137322== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137322== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137322== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137322== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137322== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137322== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137322== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137322== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137322== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137322== by 0x497836B: setlocale (setlocale.c:337) ==137322== by 0x109056: main (first.c:157) ==137322== ==137322== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137322== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137322== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137322== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137322== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137322== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137322== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137322== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137322== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137322== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137322== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137322== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137322== by 0x497836B: setlocale (setlocale.c:337) ==137322== by 0x109056: main (first.c:157) ==137322== === End of file valgrind1556 * starts no server test 1557...[Removing easy handle that's in the pending connections list doesn't leave behind a 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/4/valgrind1557 ./libtest/lib1557 nothing > log/4/stdout1557 2> log/4/stderr1557 lib1557 returned 132, when expecting 0 1557: exit FAILED == Contents of files in the log/4/ dir after test 1557 === 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 ==137321== ==137321== Process terminating with default action of signal 4 (SIGILL) ==137321== Illegal opcode at address 0x48DC18B ==137321== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59)RUN: Process with pid 79941 forced to die with SIGKILL ==137321== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137321== by 0x48DC18B: Curl_open (url.c:519) ==137321== by 0x487CCEF: curl_easy_init (easy.c:368) ==137321== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137321== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137321== by 0x1090A6: UnknownInlinedFun (lib1557.c:40) ==137321== by 0x1090A6: main (first.c:178) ==137321== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137321== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137321== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137321== by 0x4A58EC8: tsearch (tsearch.c:290) ==137321== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137321== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137321== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137321== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137321== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137321== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137321== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137321== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137321== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137321== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137321== by 0x497836B: setlocale (setlocale.c:337) ==137321== by 0x109059: main (first.c:157) ==137321== ==137321== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137321== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137321== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137321== by 0x4A58EC8: tsearch (tsearch.c:290) ==137321== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137321== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137321== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137321== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137321== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137321== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137321== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137321== by 0x497836B: setlocale (setlocale.c:337) ==137321== by 0x109059: main (first.c:157) ==137321== ==137321== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137321== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137321== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137321== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137321== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137321== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137321== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137321== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137321== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137321== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137321== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137321== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137321== by 0x497836B: setlocale (setlocale.c:337) ==137321== by 0x109059: main (first.c:157) ==137321== ==137321== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137321== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137321== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137321== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137321== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137321== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137321== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137321== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137321== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137321== by 0x497836B: setlocale (setlocale.c:337) ==137321== by 0x109059: main (first.c:157) ==137321== ==137321== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137321== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137321== by 0x48DC163: Curl_open (url.c:510) ==137321== by 0x487CCEF: curl_easy_init (easy.c:368) ==137321== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137321== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137321== by 0x1090A6: UnknownInlinedFun (lib1557.c:40) ==137321== by 0x1090A6: main (first.c:178) ==137321== ==137321== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137321== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137321== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137321== by 0x4A58EC8: tsearch (tsearch.c:290) ==137321== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137321== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137321== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137321== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137321== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137321== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137321== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137321== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137321== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137321== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137321== by 0x497836B: setlocale (setlocale.c:337) ==137321== by 0x109059: main (first.c:157) ==137321== ==137321== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137321== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137321== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137321== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137321== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137321== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137321== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137321== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137321== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137321== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137321== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137321== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137321== by 0x497836B: setlocale (setlocale.c:337) ==137321== by 0x109059: main (first.c:157) ==137321== === End of file valgrind1557 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/1/valgrind1501 ./libtest/lib1501 ftp://127.0.0.1:35701/1501/ > log/1/stdout1501 2> log/1/stderr1501 1501: 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 1501 === 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:35701/1501/ === End of file stderr1501 === Start of file valgrind1501 ==134949== ==134949== Process terminating with default action of signal 4 (SIGILL) ==134949== Illegal opcode at address 0x48DC18B ==134949== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==134949== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==134949== by 0x48DC18B: Curl_open (url.c:519) ==134949== by 0x487CCEF: curl_easy_init (easy.c:368) ==134949== by 0x1092BF: test (lib1501.c:49) ==134949== by 0x109076: main (first.c:178) ==134949== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==134949== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134949== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134949== by 0x4A58EC8: tsearch (tsearch.c:290) ==134949== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134949== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134949== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134949== by 0x496C9A2: read_coCMD (0): ../src/curl --max-time 13 --output log/3/http_verify.out --silent --verbose --globoff "http://127.0.0.1:46715/verifiedserver" 2>log/3/http_verify.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/10/valgrind1558 ./libtest/lib1558 file:///startdir/src/build-curl/tests/log/10/data1558 > log/10/stdout1558 2> log/10/stderr1558 nf_file.isra.0 (gconv_parseconfdir.h:101) ==134949== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==134949== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==134949== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134949== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134949== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134949== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134949== by 0x497836B: setlocale (setlocale.c:337) ==134949== by 0x109047: main (first.c:157) ==134949== ==134949== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==134949== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134949== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134949== by 0x4A58EC8: tsearch (tsearch.c:290) ==134949== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134949== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==134949== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==134949== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134949== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134949== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134949== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134949== by 0x497836B: setlocale (setlocale.c:337) ==134949== by 0x109047: main (first.c:157) ==134949== ==134949== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==134949== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134949== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134949== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134949== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134949== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134949== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==134949== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==134949== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134949== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134949== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134949== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134949== by 0x497836B: setlocale (setlocale.c:337) ==134949== by 0x109047: main (first.c:157) ==134949== ==134949== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==134949== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134949== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134949== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==134949== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==134949== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134949== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134949== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134949== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134949== by 0x497836B: setlocale (setlocale.c:337) ==134949== by 0x109047: main (first.c:157) ==134949== ==134949== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==134949== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==134949== by 0x48DC163: Curl_open (url.c:510) ==134949== by 0x487CCEF: curl_easy_init (easy.c:368) ==134949== by 0x1092BF: test (lib1501.c:49) ==134949== by 0x109076: main (first.c:178) ==134949== ==134949== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==134949== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134949== by 0x4A58EC8: __tsearch (tsearch.c:337) ==134949== by 0x4A58EC8: tsearch (tsearch.c:290) ==134949== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==134949== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134949== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134949== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134949== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==134949== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==134949== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134949== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134949== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134949== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134949== by 0x497836B: setlocale (setlocale.c:337) ==134949== by 0x109047: main (first.c:157) ==134949== ==134949== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==134949== at 0x4842788: malloc (vg_replace_malloc.c:446) ==134949== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==134949== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==134949== by 0x496C9A2: add_alias (gconv_conf.c:178) ==134949== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==134949== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==134949== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==134949== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==134949== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==134949== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==134949== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==134949== by 0x497836B: setlocale (setlocale.c:337) ==134949== by 0x109047: main (first.c:157) ==134949== === End of file valgrind1501 CMD (33792): ../libtool --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/valgrind1559 ./libtest/lib1559 - > log/9/stdout1559 2> log/9/stderr1559 * 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/10/valgrind1558 ./libtest/lib1558 file:///startdir/src/build-curl/tests/log/10/data1558 > log/10/stdout1558 2> log/10/stderr1558 1558: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:23.651693905 +0200 +++ log/10/check-generated 2024-05-23 11:17:23.651693905 +0200 @@ -1,2 +0,0 @@ -hello[LF] -Protocol: 400[LF] == Contents of files in the log/10/ dir after test 1558 === Start of file check-expected hello[LF] Protocol: 400[LF] === End of file check-expected === 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/10/data1558 === End of file stderr1558 === Start of file valgrind1558 ==137420== ==137420== Process terminating with default action of signal 4 (SIGILL) ==137420== Illegal opcode at address 0x48DC18B ==137420== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137420== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137420== by 0x48DC18B: Curl_open (url.c:519) ==137420== by 0x487CCEF: curl_easy_init (easy.c:368) ==137420== by 0x1090A3: UnknownInlinedFun (lib1558.c:37) ==137420== by 0x1090A3: main (first.c:178) ==137420== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137420== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137420== by 0x4A58EC8: tsearch (tsearch.c:290) ==137420== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137420== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137420== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137420== by 0x497836B: setlocale (setlocale.c:337) ==137420== by 0x109056: main (first.c:157) ==137420== ==137420== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137420== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137420== by 0x4A58EC8: tsearch (tsearch.c:290) ==137420== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137420== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137420== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137420== by 0x497836B: setlocale (setlocale.c:337) ==137420== by 0x109056: main (first.c:157) ==137420== ==137420== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137420== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137420== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137420== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137420== by 0x497836B: setlocale (setlocale.c:337) ==137420== by 0x109056: main (first.c:157) ==137420== ==137420== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137420== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137420== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137420== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137420== by 0x497836B: setlocale (setlocale.c:337) ==137420== by 0x109056: main (first.c:157) ==137420== ==137420== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137420== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137420== by 0x48DC163: Curl_open (url.c:510) ==137420== by 0x487CCEF: curl_easy_init (easy.c:368) ==137420== by 0x1090A3: UnknownInlinedFun (lib1558.c:37) ==137420== by 0x1090A3: main (first.c:178) ==137420== ==137420== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137420== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137420== by 0x4A58EC8: tsearch (tsearch.c:290) ==137420== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137420== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137420== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137420== by 0x497836B: setlocale (setlocale.c:337) ==137420== by 0x109056: main (first.c:157) ==137420== ==137420== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137420== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137420== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137420== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137420== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137420== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137420== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137420== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137420== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137420== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137420== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137420== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137420== by 0x497836B: setlocale (setlocale.c:337) ==137420== by 0x109056: main (first.c:157) ==137420== === End of file valgrind1558 CMD (33792): ../libtool --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/valgrind1564 ./libtest/lib1564 - > log/2/stdout1564 2> log/2/stderr1564 * 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/9/valgrind1559 ./libtest/lib1559 - > log/9/stdout1559 2> log/9/stderr1559 1559: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:23.658360708 +0200 +++ log/9/check-generated 2024-05-23 11:17:23.658360708 +0200 @@ -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/9/ 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 server.cmd Testnum 1559 === End of file server.cmd === Start of file stderr1559 URL: - === End of file stderr1559 === Start of file valgrind1559 ==137419== ==137419== Process terminating with default action of signal 4 (SIGILL) ==137419== Illegal opcode at address 0x48DC18B ==137419== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137419== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137419== by 0x48DC18B: Curl_open (url.c:519) ==137419== by 0x487CCEF: curl_easy_init (easy.c:368) ==137419== by 0x1090C1: UnknownInlinedFun (lib1559.c:46) ==137419== by 0x1090C1: main (first.c:178) ==137419== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137419== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137419== by 0x4A58EC8: tsearch (tsearch.c:290) ==137419== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137419== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137419== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137419== by 0x497836B: setlocale (setlocale.c:337) ==137419== by 0x10904B: main (first.c:157) ==137419== ==137419== 552 bytes in 23 blocks are possibly lost in loss record 605 of 651 ==137419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137419== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137419== by 0x4A58EC8: tsearch (tsearch.c:290) ==137419== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137419== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137419== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137419== by 0x497836B: setlocale (setlocale.c:337) ==137419== by 0x10904B: main (first.c:157) ==137419== ==137419== 681 bytes in 17 blocks are possibly lost in loss record 611 of 651 ==137419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137419== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137419== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137419== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137419== by 0x497836B: setlocale (setlocale.c:337) ==137419== by 0x10904B: main (first.c:157) ==137419== ==137419== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 651 ==137419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137419== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137419== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137419== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137419== by 0x497836B: setlocale (setlocale.c:337) ==137419== by 0x10904B: main (first.c:157) ==137419== ==137419== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 651 ==137419== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137419== by 0x48DC163: Curl_open (url.c:510) ==137419== by 0x487CCEF: curl_easy_init (easy.c:368) ==137419== by 0x1090C1: UnknownInlinedFun (lib1559.c:46) ==137419== by 0x1090C1: main (first.c:178) ==137419== ==137419== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 651 ==137419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137419== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137419== by 0x4A58EC8: tsearch (tsearch.c:290) ==137419== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137419== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137419== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137419== by 0x497836B: setlocale (setlocale.c:337) ==137419== by 0x10904B: main (first.c:157) ==137419== ==137419== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 651 ==137419== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137419== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137419== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137419== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137419== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137419== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137419== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137419== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137419== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137419== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137419== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137419== by 0x497836B: setlocale (setlocale.c:337) ==137419== by 0x10904B: main (first.c:157) ==137419== === 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/2/valgrind1564 ./libtest/lib1564 - > log/2/stdout1564 2> log/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/8/valgrind1566 ../src/curl -q --trace-ascii log/8/trace1566 --trace-time http://127.0.0.1:33791/1566 -o log/8/output1566 --etag-compare log/8/etag1566 > log/8/stdout1566 2> log/8/stderr1566 stderr1564 lib1564 returned 132, when expecting 0 1564: exit FAILED == Contents of files in the log/2/ dir after test 1564 === 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 ==137557== ==137557== Process terminating with default action of signal 4 (SIGILL) ==137557== Illegal opcode at address 0x48DC18B ==137557== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137557== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137557== by 0x48DC18B: Curl_open (url.c:519) ==137557== by 0x487CCEF: curl_easy_init (easy.c:368) ==137557== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137557== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137557== by 0x1090AD: UnknownInlinedFun (lib1564.c:47) ==137557== by 0x1090AD: UnknownInlinedFun (lib1564.c:33) ==137557== by 0x1090AD: main (first.c:178) ==137557== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137557== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137557== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137557== by 0x4A58EC8: tsearch (tsearch.c:290) ==137557== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137557== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137557== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137557== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137557== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137557== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137557== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137557== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137557== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137557== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137557== by 0x497836B: setlocale (setlocale.c:337) ==137557== by 0x109058: main (first.c:157) ==137557== ==137557== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137557== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137557== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137557== by 0x4A58EC8: tsearch (tsearch.c:290) ==137557== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137557== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137557== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137557== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137557== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137557== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137557== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137557== by 0x497836B: setlocale (setlocale.c:337) ==137557== by 0x109058: main (first.c:157) ==137557== ==137557== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137557== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137557== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137557== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137557== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137557== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137557== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137557== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137557== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137557== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137557== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137557== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137557== by 0x497836B: setlocale (setlocale.c:337) ==137557== by 0x109058: main (first.c:157) ==137557== ==137557== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137557== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137557== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137557== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137557== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137557== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137557== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137557== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137557== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137557== by 0x497836B: setlocale (setlocale.c:337) ==137557== by 0x109058: main (first.c:157) ==137557== ==137557== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137557== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137557== by 0x48DC163: Curl_open (url.c:510) ==137557== by 0x487CCEF: curl_easy_init (easy.c:368) ==137557== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137557== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137557== by 0x1090AD: UnknownInlinedFun (lib1564.c:47) ==137557== by 0x1090AD: UnknownInlinedFun (lib1564.c:33) ==137557== by 0x1090AD: main (first.c:178) ==137557== ==137557== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137557== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137557== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137557== by 0x4A58EC8: tsearch (tsearch.c:290) ==137557== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137557== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137557== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137557== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137557== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137557== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137557== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137557== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137557== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137557== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137557== by 0x497836B: setlocale (setlocale.c:337) ==137557== by 0x109058: main (first.c:157) ==137557== ==137557== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137557== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137557== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137557== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137557== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137557== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137557== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137557== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137557== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137557== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137557== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137557== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137557== by 0x497836B: setlocale (setlocale.c:337) ==137557== by 0x109058: main (first.c:157) ==137557== === End of file valgrind1564 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/8/valgrind1566 ../src/curl -q --trace-ascii log/8/trace1566 --trace-time http://127.0.0.1:33791/1566 -o log/8/output1566 --etag-compare log/8/etag1566 > log/8/stdout1566 2> log/8/stderr1566 1566: 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 1566 === Start of file etag1566 "123456" === End of file etag1566 === 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 valgrind1566 ==137660== ==137660== Process terminating with default action of signal 4 (SIGILL) ==137660== Illegal opcode at address 0x10B06D ==137660== at 0x10B06D: UnknownInlinedFun (string_fortifiCMD (33792): ../libtool --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/valgrind1565 ./libtest/lib1565 http://127.0.0.1:35853/1 > log/7/stdout1565 2> log/7/stderr1565 CMD (33792): ../libtool --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/valgrind1567 ./libtest/lib1567 http://127.0.0.1:44175/1567 > log/12/stdout1567 2> log/12/stderr1567 ed.h:59) ==137660== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1566 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/7/valgrind1565 ./libtest/lib1565 http://127.0.0.1:35853/1 > log/7/stdout1565 2> log/7/stderr1565 lib1565 returned 132, when expecting 0 1565: exit FAILED == Contents of files in the log/7/ dir after test 1565 === Start of file server.cmd Testnum 1565 === End of file server.cmd === Start of file stderr1565 URL: http://127.0.0.1:35853/1 === End of file stderr1565 === Start of file valgrind1565 ==137611== ==137611== Process terminating with default action of signal 4 (SIGILL) ==137611== Illegal opcode at address 0x48DC18B ==137611== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137611== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137611== by 0x48DC18B: Curl_open (url.c:519) ==137611== by 0x487CCEF: curl_easy_init (easy.c:368) ==137611== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137611== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137611== by 0x1090B1: UnknownInlinedFun (lib1565.c:110) ==137611== by 0x1090B1: UnknownInlinedFun (lib1565.c:92) ==137611== by 0x1090B1: main (first.c:178) ==137611== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137611== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137611== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137611== by 0x4A58EC8: tsearch (tsearch.c:290) ==137611== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137611== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137611== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137611== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137611== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137611== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137611== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137611== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137611== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137611== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137611== by 0x497836B: setlocale (setlocale.c:337) ==137611== by 0x109058: main (first.c:157) ==137611== ==137611== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137611== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137611== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137611== by 0x4A58EC8: tsearch (tsearch.c:290) ==137611== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137611== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137611== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137611== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137611== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137611== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137611== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137611== by 0x497836B: setlocale (setlocale.c:337) ==137611== by 0x109058: main (first.c:157) ==137611== ==137611== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137611== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137611== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137611== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137611== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137611== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137611== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137611== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137611== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137611== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137611== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137611== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137611== by 0x497836B: setlocale (setlocale.c:337) ==137611== by 0x109058: main (first.c:157) ==137611== ==137611== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==137611== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137611== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137611== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137611== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137611== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137611== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137611== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137611== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137611== by 0x497836B: setlocale (setlocale.c:337) ==137611== by 0x109058: main (first.c:157) ==137611== ==137611== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137611== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137611== by 0x48DC163: Curl_open (url.c:510) ==137611== by 0x487CCEF: curl_easy_init (easy.c:368) ==137611== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137611== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137611== by 0x1090B1: UnknownInlinedFun (lib1565.c:110) ==137611== by 0x1090B1: UnknownInlinedFun (lib1565.c:92) ==137611== by 0x1090B1: main (first.c:178) ==137611== ==137611== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137611== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137611== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137611== by 0x4A58EC8: tsearch (tsearch.c:290) ==137611== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137611== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137611== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137611== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137611== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137611== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137611== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137611== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137611== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137611== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137611== by 0x497836B: setlocale (setlocale.c:337) ==137611== by 0x109058: main (first.c:157) ==137611== ==137611== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137611== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137611== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137611== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137611== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137611== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137611== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137611== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137611== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137611== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137611== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137611== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137611== by 0x497836B: setlocale (setlocale.c:337) ==137611== by 0x109058: main (first.c:157) ==137611== === End of file valgrind1565 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/12/valgrind1567 ./libtest/lib1567 http://127.0.0.1:44175/1567 > log/12/stdout1567 2> log/12/stderr1567 1567: 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 1567 === Start of file server.cmd Testnum 1567 === End of file server.cmd === Start of file stderr1567 URL: http://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/6/valgrind1568 ./libtest/lib1568 http://127.0.0.1/1568 42657 > log/6/stdout1568 2> log/6/stderr1568 27.0.0.1:44175/1567 === End of file stderr1567 === Start of file valgrind1567 ==137697== ==137697== Process terminating with default action of signal 4 (SIGILL) ==137697== Illegal opcode at address 0x48DC18B ==137697== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137697== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137697== by 0x48DC18B: Curl_open (url.c:519) ==137697== by 0x487CCEF: curl_easy_init (easy.c:368) ==137697== by 0x109091: UnknownInlinedFun (lib1567.c:37) ==137697== by 0x109091: UnknownInlinedFun (lib1567.c:30) ==137697== by 0x109091: main (first.c:178) ==137697== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137697== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137697== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137697== by 0x4A58EC8: tsearch (tsearch.c:290) ==137697== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137697== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137697== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137697== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137697== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137697== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137697== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137697== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137697== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137697== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137697== by 0x497836B: setlocale (setlocale.c:337) ==137697== by 0x10904B: main (first.c:157) ==137697== ==137697== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137697== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137697== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137697== by 0x4A58EC8: tsearch (tsearch.c:290) ==137697== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137697== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137697== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137697== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137697== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137697== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137697== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137697== by 0x497836B: setlocale (setlocale.c:337) ==137697== by 0x10904B: main (first.c:157) ==137697== ==137697== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137697== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137697== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137697== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137697== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137697== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137697== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137697== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137697== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137697== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137697== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137697== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137697== by 0x497836B: setlocale (setlocale.c:337) ==137697== by 0x10904B: main (first.c:157) ==137697== ==137697== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137697== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137697== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137697== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137697== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137697== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137697== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137697== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137697== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137697== by 0x497836B: setlocale (setlocale.c:337) ==137697== by 0x10904B: main (first.c:157) ==137697== ==137697== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137697== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137697== by 0x48DC163: Curl_open (url.c:510) ==137697== by 0x487CCEF: curl_easy_init (easy.c:368) ==137697== by 0x109091: UnknownInlinedFun (lib1567.c:37) ==137697== by 0x109091: UnknownInlinedFun (lib1567.c:30) ==137697== by 0x109091: main (first.c:178) ==137697== ==137697== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137697== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137697== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137697== by 0x4A58EC8: tsearch (tsearch.c:290) ==137697== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137697== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137697== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137697== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137697== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137697== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137697== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137697== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137697== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137697== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137697== by 0x497836B: setlocale (setlocale.c:337) ==137697== by 0x10904B: main (first.c:157) ==137697== ==137697== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137697== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137697== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137697== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137697== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137697== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137697== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137697== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137697== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137697== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137697== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137697== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137697== by 0x497836B: setlocale (setlocale.c:337) ==137697== by 0x10904B: main (first.c:157) ==137697== === End of file valgrind1567 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/6/valgrind1568 ./libtest/lib1568 http://127.0.0.1/1568 42657 > log/6/stdout1568 2> log/6/stderr1568 1568: 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 1568 === Start of file server.cmd Testnum 1568 === End of file server.cmd === Start of file stderr1568 URL: http://127.0.0.1/1568 === End of file stderr1568 === Start of file valgrind1568 ==137769== ==137769== Process terminating with default action of signal 4 (SIGILL) ==137769== Illegal opcode at address 0x48DC18B ==137769== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137769== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137769== by 0x48DC18B: Curl_open (url.c:519) ==137769== by 0x487CCEF: curl_easy_init (easy.c:368) ==137769== by 0x109094: UnknownInlinedFun (lib1568.c:35) ==137769== by 0x109094: main (first.c:178) ==137769== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137769== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137769== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137769== by 0x4A58EC8: tsearch (tsearch.c:290) ==137769== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137769== CMD (33792): ../libtool --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/valgrind1569 ./libtest/lib1569 "ftp://127.0.0.1:35155/1569;type=A" ftp://127.0.0.1:35155/1569 > log/5/stdout1569 2> log/5/stderr1569 by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137769== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137769== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137769== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137769== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137769== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137769== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137769== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137769== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137769== by 0x497836B: setlocale (setlocale.c:337) ==137769== by 0x109047: main (first.c:157) ==137769== ==137769== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137769== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137769== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137769== by 0x4A58EC8: tsearch (tsearch.c:290) ==137769== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137769== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137769== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137769== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137769== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137769== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137769== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137769== by 0x497836B: setlocale (setlocale.c:337) ==137769== by 0x109047: main (first.c:157) ==137769== ==137769== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137769== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137769== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137769== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137769== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137769== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137769== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137769== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137769== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137769== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137769== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137769== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137769== by 0x497836B: setlocale (setlocale.c:337) ==137769== by 0x109047: main (first.c:157) ==137769== ==137769== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137769== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137769== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137769== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137769== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137769== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137769== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137769== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137769== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137769== by 0x497836B: setlocale (setlocale.c:337) ==137769== by 0x109047: main (first.c:157) ==137769== ==137769== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137769== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137769== by 0x48DC163: Curl_open (url.c:510) ==137769== by 0x487CCEF: curl_easy_init (easy.c:368) ==137769== by 0x109094: UnknownInlinedFun (lib1568.c:35) ==137769== by 0x109094: main (first.c:178) ==137769== ==137769== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137769== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137769== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137769== by 0x4A58EC8: tsearch (tsearch.c:290) ==137769== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137769== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137769== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137769== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137769== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137769== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137769== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137769== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137769== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137769== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137769== by 0x497836B: setlocale (setlocale.c:337) ==137769== by 0x109047: main (first.c:157) ==137769== ==137769== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137769== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137769== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137769== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137769== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137769== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137769== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137769== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137769== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137769== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137769== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137769== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137769== by 0x497836B: setlocale (setlocale.c:337) ==137769== by 0x109047: main (first.c:157) ==137769== === End of file valgrind1568 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/5/valgrind1569 ./libtest/lib1569 "ftp://127.0.0.1:35155/1569;type=A" ftp://127.0.0.1:35155/1569 > log/5/stdout1569 2> log/5/stderr1569 1569: 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 1569 === 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:35155/1569;type=A === End of file stderr1569 === Start of file valgrind1569 ==137819== ==137819== Process terminating with default action of signal 4 (SIGILL) ==137819== Illegal opcode at address 0x48DC18B ==137819== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137819== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137819== by 0x48DC18B: Curl_open (url.c:519) ==137819== by 0x487CCEF: curl_easy_init (easy.c:368) ==137819== by 0x10909C: UnknownInlinedFun (lib1569.c:35) ==137819== by 0x10909C: UnknownInlinedFun (lib1569.c:29) ==137819== by 0x10909C: main (first.c:178) ==137819== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137819== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137819== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137819== by 0x4A58EC8: tsearch (tsearch.c:290) ==137819== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137819== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137819== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137819== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137819== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137819== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137819== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137819== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137819== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137819== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137819== by 0x497836B: setlocale (setlocale.c:337) ==137819== by 0x109045: main (first.c:157) ==137819== ==137819== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137819== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137819== by 0x4A58EC8: __CMD (33792): ../libtool --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/valgrind1570 ./libtest/lib1569 "ftp://127.0.0.1:36137/1570;type=D" ftp://127.0.0.1:36137/1570 > log/4/stdout1570 2> log/4/stderr1570 tsearch (tsearch.c:337) ==137819== by 0x4A58EC8: tsearch (tsearch.c:290) ==137819== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137819== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137819== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137819== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137819== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137819== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137819== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137819== by 0x497836B: setlocale (setlocale.c:337) ==137819== by 0x109045: main (first.c:157) ==137819== ==137819== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137819== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137819== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137819== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137819== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137819== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137819== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137819== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137819== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137819== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137819== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137819== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137819== by 0x497836B: setlocale (setlocale.c:337) ==137819== by 0x109045: main (first.c:157) ==137819== ==137819== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137819== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137819== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137819== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137819== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137819== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137819== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137819== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137819== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137819== by 0x497836B: setlocale (setlocale.c:337) ==137819== by 0x109045: main (first.c:157) ==137819== ==137819== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137819== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137819== by 0x48DC163: Curl_open (url.c:510) ==137819== by 0x487CCEF: curl_easy_init (easy.c:368) ==137819== by 0x10909C: UnknownInlinedFun (lib1569.c:35) ==137819== by 0x10909C: UnknownInlinedFun (lib1569.c:29) ==137819== by 0x10909C: main (first.c:178) ==137819== ==137819== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137819== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137819== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137819== by 0x4A58EC8: tsearch (tsearch.c:290) ==137819== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137819== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137819== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137819== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137819== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137819== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137819== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137819== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137819== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137819== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137819== by 0x497836B: setlocale (setlocale.c:337) ==137819== by 0x109045: main (first.c:157) ==137819== ==137819== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137819== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137819== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137819== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137819== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137819== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137819== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137819== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137819== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137819== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137819== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137819== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137819== by 0x497836B: setlocale (setlocale.c:337) ==137819== by 0x109045: main (first.c:157) ==137819== === End of file valgrind1569 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/4/valgrind1570 ./libtest/lib1569 "ftp://127.0.0.1:36137/1570;type=D" ftp://127.0.0.1:36137/1570 > log/4/stdout1570 2> log/4/stderr1570 1570: 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 1570 === 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:36137/1570;type=D === End of file stderr1570 === Start of file valgrind1570 ==137850== ==137850== Process terminating with default action of signal 4 (SIGILL) ==137850== Illegal opcode at address 0x48DC18B ==137850== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137850== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137850== by 0x48DC18B: Curl_open (url.c:519) ==137850== by 0x487CCEF: curl_easy_init (easy.c:368) ==137850== by 0x10909C: UnknownInlinedFun (lib1569.c:35) ==137850== by 0x10909C: UnknownInlinedFun (lib1569.c:29) ==137850== by 0x10909C: main (first.c:178) ==137850== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137850== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137850== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137850== by 0x4A58EC8: tsearch (tsearch.c:290) ==137850== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137850== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137850== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137850== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137850== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137850== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137850== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137850== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137850== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137850== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137850== by 0x497836B: setlocale (setlocale.c:337) ==137850== by 0x109045: main (first.c:157) ==137850== ==137850== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137850== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137850== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137850== by 0x4A58EC8: tsearch (tsearch.c:290) ==137850== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137850== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137850== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137850== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137850== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137850== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137850== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137850== by 0x497836B: setlocale (setlocale.c:337) ==137850== by 0x109045: main (first.c:157) ==137850== ==137850== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137850== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137850== by 0x496CMD (33792): ../libtool --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/valgrind1590 ./libtest/lib1553 imap://localhost:37999/1590 > log/1/stdout1590 2> log/1/stderr1590 C669: add_alias2.part.0 (gconv_conf.c:132) ==137850== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137850== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137850== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137850== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137850== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137850== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137850== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137850== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137850== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137850== by 0x497836B: setlocale (setlocale.c:337) ==137850== by 0x109045: main (first.c:157) ==137850== ==137850== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137850== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137850== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137850== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137850== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137850== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137850== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137850== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137850== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137850== by 0x497836B: setlocale (setlocale.c:337) ==137850== by 0x109045: main (first.c:157) ==137850== ==137850== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137850== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137850== by 0x48DC163: Curl_open (url.c:510) ==137850== by 0x487CCEF: curl_easy_init (easy.c:368) ==137850== by 0x10909C: UnknownInlinedFun (lib1569.c:35) ==137850== by 0x10909C: UnknownInlinedFun (lib1569.c:29) ==137850== by 0x10909C: main (first.c:178) ==137850== ==137850== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137850== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137850== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137850== by 0x4A58EC8: tsearch (tsearch.c:290) ==137850== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137850== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137850== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137850== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137850== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137850== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137850== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137850== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137850== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137850== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137850== by 0x497836B: setlocale (setlocale.c:337) ==137850== by 0x109045: main (first.c:157) ==137850== ==137850== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137850== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137850== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137850== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137850== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137850== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137850== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137850== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137850== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137850== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137850== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137850== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137850== by 0x497836B: setlocale (setlocale.c:337) ==137850== by 0x109045: main (first.c:157) ==137850== === End of file valgrind1570 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/1/valgrind1590 ./libtest/lib1553 imap://localhost:37999/1590 > log/1/stdout1590 2> log/1/stderr1590 lib1553 returned 132, when expecting 0 1590: exit FAILED == Contents of files in the log/1/ dir after test 1590 === Start of file server.cmd Testnum 1590 === End of file server.cmd === Start of file stderr1590 URL: imap://localhost:37999/1590 === End of file stderr1590 === Start of file valgrind1590 ==137929== ==137929== Process terminating with default action of signal 4 (SIGILL) ==137929== Illegal opcode at address 0x48DC18B ==137929== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137929== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137929== by 0x48DC18B: Curl_open (url.c:519) ==137929== by 0x487CCEF: curl_easy_init (easy.c:368) ==137929== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137929== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137929== by 0x1090B1: UnknownInlinedFun (lib1553.c:60) ==137929== by 0x1090B1: UnknownInlinedFun (lib1553.c:45) ==137929== by 0x1090B1: main (first.c:178) ==137929== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==137929== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137929== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137929== by 0x4A58EC8: tsearch (tsearch.c:290) ==137929== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137929== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137929== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137929== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137929== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137929== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137929== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137929== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137929== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137929== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137929== by 0x497836B: setlocale (setlocale.c:337) ==137929== by 0x109058: main (first.c:157) ==137929== ==137929== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==137929== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137929== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137929== by 0x4A58EC8: tsearch (tsearch.c:290) ==137929== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137929== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137929== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137929== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137929== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137929== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137929== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137929== by 0x497836B: setlocale (setlocale.c:337) ==137929== by 0x109058: main (first.c:157) ==137929== ==137929== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==137929== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137929== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137929== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137929== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137929== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137929== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137929== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137929== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137929== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137929== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137929== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137929== by 0x497836B: setlocale (setlocale.c:337) ==137929== by 0x109058: main (first.c:157) ==137929== ==137929== 1,018 bytes in 23 blocks are possibly lost in loss 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/3/valgrind1555 ./libtest/lib1555 http://127.0.0.1:46715/1555 > log/3/stdout1555 2> log/3/stderr1555 ord 626 of 651 ==137929== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137929== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137929== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137929== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137929== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137929== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137929== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137929== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137929== by 0x497836B: setlocale (setlocale.c:337) ==137929== by 0x109058: main (first.c:157) ==137929== ==137929== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==137929== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137929== by 0x48DC163: Curl_open (url.c:510) ==137929== by 0x487CCEF: curl_easy_init (easy.c:368) ==137929== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==137929== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==137929== by 0x1090B1: UnknownInlinedFun (lib1553.c:60) ==137929== by 0x1090B1: UnknownInlinedFun (lib1553.c:45) ==137929== by 0x1090B1: main (first.c:178) ==137929== ==137929== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==137929== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137929== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137929== by 0x4A58EC8: tsearch (tsearch.c:290) ==137929== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137929== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137929== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137929== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137929== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137929== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137929== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137929== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137929== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137929== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137929== by 0x497836B: setlocale (setlocale.c:337) ==137929== by 0x109058: main (first.c:157) ==137929== ==137929== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==137929== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137929== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137929== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137929== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137929== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137929== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137929== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137929== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137929== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137929== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137929== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137929== by 0x497836B: setlocale (setlocale.c:337) ==137929== by 0x109058: main (first.c:157) ==137929== === End of file valgrind1590 startnew: perl -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: ../src/curl --max-time 13 --output log/3/http_verify.out --silent --verbose --globoff "http://127.0.0.1:46715/verifiedserver" 2>log/3/http_verify.log RUN: HTTP server is on PID 137313 port 46715 * pid http => 137313 137313 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/3/valgrind1555 ./libtest/lib1555 http://127.0.0.1:46715/1555 > log/3/stdout1555 2> log/3/stderr1555 1555: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:24.435043329 +0200 +++ log/3/check-generated 2024-05-23 11:17:24.435043329 +0200 @@ -1,2 +0,0 @@ -curl_easy_recv returned 93[LF] -curl_easy_send returned 93[LF] == Contents of files in the log/3/ 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 http_server.log 11:17:22.982224 Running HTTP IPv4 version on port 46715 11:17:22.982327 Wrote pid 137313 to log/3/server/http_server.pid 11:17:22.982349 Wrote port 46715 to log/3/server/http_server.port 11:17:23.992761 ====> Client connect 11:17:23.992786 accept_connection 3 returned 4 11:17:23.992800 accept_connection 3 returned 0 11:17:23.992813 Read 92 bytes 11:17:23.992821 Process 92 bytes request 11:17:23.992839 Got request: GET /verifiedserver HTTP/1.1 11:17:23.992847 Are-we-friendly question received 11:17:23.992867 Wrote request (92 bytes) input to log/3/server.input 11:17:23.992888 Identifying ourselves as friends 11:17:23.992954 Response sent (57 bytes) and written to log/3/server.response 11:17:23.992963 special request received, no persistency 11:17:23.992971 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46715... * Connected to 127.0.0.1 (127.0.0.1) port 46715 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46715 > User-Agent: curl/8.8.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: 137313 === 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: 18 WE ROOLZ: 137313 === End of file server.response === Start of file stderr1555 URL: http://127.0.0.1:46715/1555 === End of file stderr1555 === Start of file valgrind1555 ==137939== ==137939== Process terminating with default action of signal 4 (SIGILL) ==137939== Illegal opcode at address 0x48DC18B ==137939== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==137939== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==137939== by 0x48DC18B: Curl_open (url.c:519) ==137939== by 0x487CCEF: curl_easy_init (easy.c:368) ==137939== by 0x10908D: UnknownInlinedFun (lib1555.c:62) ==137939== by 0x10908D: UnknownInlinedFun (lib1555.c:56) ==137939== by 0x10908D: main (first.c:178) ==137939== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==137939== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137939== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137939== by 0x4A58EC8: tsearch (tsearch.c:290) ==137939== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137939== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137939== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137939== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137939== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137939== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137939== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137939== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137939== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137939== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137939== by 0x497836B: setlocale (setlocale.c:337) ==137939== by 0x109047: main (first.c:157) ==137939== ==137939== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==137939== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137939== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137939== by 0x4A58EC8: tsearch (tsearch.c:290) ==137939== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137939== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137939== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137939== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137939== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137939== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137939== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137939== by 0x497836B: setlocale (setlocale.c:337) ==137939== by 0x109047: main (first.c:157) ==137939== ==137939== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==137939== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137939== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137939== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137939== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137939== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137939== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==137939== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==137939== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137939== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137939== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137939== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137939== by 0x497836B: setlocale (setlocale.c:337) ==137939== by 0x109047: main (first.c:157) ==137939== ==137939== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==137939== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137939== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137939== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==137939== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==137939== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137939== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137939== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137939== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137939== by 0x497836B: setlocale (setlocale.c:337) ==137939== by 0x109047: main (first.c:157) ==137939== ==137939== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==137939== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==137939== by 0x48DC163: Curl_open (url.c:510) ==137939== by 0x487CCEF: curl_easy_init (easy.c:368) ==137939== by 0x10908D: UnknownInlinedFun (lib1555.c:62) ==137939== by 0x10908D: UnknownInlinedFun (lib1555.c:56) ==137939== by 0x10908D: main (first.c:178) ==137939== ==137939== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==137939== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137939== by 0x4A58EC8: __tsearch (tsearch.c:337) ==137939== by 0x4A58EC8: tsearch (tsearch.c:290) ==137939== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==137939== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137939== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137939== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137939== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137939== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137939== by 0x49DC34A: __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/10/valgrind1591 ./libtest/lib1591 http://127.0.0.1:36145/bzz/1591 log/10/stdout1591 2> log/10/stderr1591 _slow.isra.0 (pthread_once.c:116) ==137939== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137939== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137939== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137939== by 0x497836B: setlocale (setlocale.c:337) ==137939== by 0x109047: main (first.c:157) ==137939== ==137939== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==137939== at 0x4842788: malloc (vg_replace_malloc.c:446) ==137939== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==137939== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==137939== by 0x496C9A2: add_alias (gconv_conf.c:178) ==137939== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==137939== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==137939== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==137939== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==137939== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==137939== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==137939== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==137939== by 0x497836B: setlocale (setlocale.c:337) ==137939== by 0x109047: main (first.c:157) ==137939== === End of file valgrind1555 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/10/valgrind1591 ./libtest/lib1591 http://127.0.0.1:36145/bzz/1591 log/10/stdout1591 2> log/10/stderr1591 1591: 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 1591 === Start of file server.cmd Testnum 1591 === End of file server.cmd === Start of file stderr1591 URL: http://127.0.0.1:36145/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 ==138032== ==138032== Process terminating with default action of signal 4 (SIGILL) ==138032== Illegal opcode at address 0x48DC18B ==138032== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138032== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138032== by 0x48DC18B: Curl_open (url.c:519) ==138032== by 0x487CCEF: curl_easy_init (easy.c:368) ==138032== by 0x109088: UnknownInlinedFun (lib1591.c:89) ==138032== by 0x109088: main (first.c:178) ==138032== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138032== by 0x4A58EC8: tsearch (tsearch.c:290) ==138032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138032== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138032== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138032== by 0x497836B: setlocale (setlocale.c:337) ==138032== by 0x109045: main (first.c:157) ==138032== ==138032== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138032== by 0x4A58EC8: tsearch (tsearch.c:290) ==138032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138032== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138032== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138032== by 0x497836B: setlocale (setlocale.c:337) ==138032== by 0x109045: main (first.c:157) ==138032== ==138032== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138032== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138032== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138032== by 0x497836B: setlocale (setlocale.c:337) ==138032== by 0x109045: main (first.c:157) ==138032== ==138032== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138032== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138032== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138032== by 0x497836B: setlocale (setlocale.c:337) ==138032== by 0x109045: main (first.c:157) ==138032== ==138032== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138032== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138032== by 0x48DC163: Curl_open (url.c:510) ==138032== by 0x487CCEF: curl_easy_init (easy.c:368) ==138032== by 0x109088: UnknownInlinedFun (lib1591.c:89) ==138032== by 0x109088: main (first.c:178) ==138032== ==138032== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138032== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138032== by 0x4A58EC8: tsearch (tsearch.c:290) ==138032== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138032== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138032== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138032== by 0x497836B: setlocale (setlocale.c:337) ==138032== by 0x109045: main (first.c:157) ==138032== ==138032== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138032== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138032== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138032== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138032== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138032== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138032== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138032== by 0x496CD49: __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/2/valgrind1593 ./libtest/lib1593 http://127.0.0.1:44205/1593 > log/2/stdout1593 2> log/2/stderr1593 CMD (33792): ../libtool --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/valgrind1594 ./libtest/lib1594 http://127.0.0.1:33791/1594 > log/8/stdout1594 2> log/8/stderr1594 138032== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138032== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138032== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138032== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138032== by 0x497836B: setlocale (setlocale.c:337) ==138032== by 0x109045: main (first.c:157) ==138032== === End of file valgrind1591 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/2/valgrind1593 ./libtest/lib1593 http://127.0.0.1:44205/1593 > log/2/stdout1593 2> log/2/stderr1593 1593: 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 1593 === Start of file server.cmd Testnum 1593 === End of file server.cmd === Start of file stderr1593 URL: http://127.0.0.1:44205/1593 === End of file stderr1593 === Start of file valgrind1593 ==138094== ==138094== Process terminating with default action of signal 4 (SIGILL) ==138094== Illegal opcode at address 0x48DC18B ==138094== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138094== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138094== by 0x48DC18B: Curl_open (url.c:519) ==138094== by 0x487CCEF: curl_easy_init (easy.c:368) ==138094== by 0x10909B: UnknownInlinedFun (lib1593.c:40) ==138094== by 0x10909B: UnknownInlinedFun (lib1593.c:31) ==138094== by 0x10909B: main (first.c:178) ==138094== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138094== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138094== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138094== by 0x4A58EC8: tsearch (tsearch.c:290) ==138094== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138094== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138094== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138094== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138094== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138094== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138094== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138094== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138094== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138094== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138094== by 0x497836B: setlocale (setlocale.c:337) ==138094== by 0x109056: main (first.c:157) ==138094== ==138094== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138094== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138094== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138094== by 0x4A58EC8: tsearch (tsearch.c:290) ==138094== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138094== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138094== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138094== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138094== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138094== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138094== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138094== by 0x497836B: setlocale (setlocale.c:337) ==138094== by 0x109056: main (first.c:157) ==138094== ==138094== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138094== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138094== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138094== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138094== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138094== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138094== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138094== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138094== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138094== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138094== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138094== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138094== by 0x497836B: setlocale (setlocale.c:337) ==138094== by 0x109056: main (first.c:157) ==138094== ==138094== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138094== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138094== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138094== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138094== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138094== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138094== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138094== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138094== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138094== by 0x497836B: setlocale (setlocale.c:337) ==138094== by 0x109056: main (first.c:157) ==138094== ==138094== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138094== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138094== by 0x48DC163: Curl_open (url.c:510) ==138094== by 0x487CCEF: curl_easy_init (easy.c:368) ==138094== by 0x10909B: UnknownInlinedFun (lib1593.c:40) ==138094== by 0x10909B: UnknownInlinedFun (lib1593.c:31) ==138094== by 0x10909B: main (first.c:178) ==138094== ==138094== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138094== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138094== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138094== by 0x4A58EC8: tsearch (tsearch.c:290) ==138094== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138094== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138094== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138094== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138094== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138094== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138094== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138094== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138094== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138094== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138094== by 0x497836B: setlocale (setlocale.c:337) ==138094== by 0x109056: main (first.c:157) ==138094== ==138094== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138094== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138094== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138094== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138094== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138094== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138094== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138094== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138094== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138094== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138094== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138094== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138094== by 0x497836B: setlocale (setlocale.c:337) ==138094== by 0x109056: main (first.c:157) ==138094== === End of file valgrind1593 CMD (33792): ../libtool --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/valgrind1595 ./libtest/lib1594 http://127.0.0.1:35853/1595 > log/7/stdout1595 2> log/7/stderr1595 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/8/valgrind1594 ./libtest/lib1594 http://127.0.0.1:33791/1594 > log/8/stdout1594 2> log/8/stderr1594 1594: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:24.661714652 +0200 +++ log/8/check-generated 2024-05-23 11:17:24.661714652 +0200 @@ -1 +0,0 @@ -Retry-After 22[LF] == Contents of files in the log/8/ dir after test 1594 === Start of file check-expected Retry-After 22[LF] === End of file check-expected === Start of file server.cmd Testnum 1594 === End of file server.cmd === Start of file stderr1594 URL: http://127.0.0.1:33791/1594 === End of file stderr1594 === Start of file valgrind1594 ==138095== ==138095== Process terminating with default action of signal 4 (SIGILL) ==138095== Illegal opcode at address 0x48DC18B ==138095== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138095== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138095== by 0x48DC18B: Curl_open (url.c:519) ==138095== by 0x487CCEF: curl_easy_init (easy.c:368) ==138095== by 0x10909B: UnknownInlinedFun (lib1594.c:40) ==138095== by 0x10909B: UnknownInlinedFun (lib1594.c:31) ==138095== by 0x10909B: main (first.c:178) ==138095== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138095== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138095== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138095== by 0x4A58EC8: tsearch (tsearch.c:290) ==138095== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138095== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138095== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138095== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138095== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138095== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138095== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138095== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138095== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138095== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138095== by 0x497836B: setlocale (setlocale.c:337) ==138095== by 0x109056: main (first.c:157) ==138095== ==138095== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138095== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138095== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138095== by 0x4A58EC8: tsearch (tsearch.c:290) ==138095== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138095== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138095== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138095== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138095== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138095== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138095== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138095== by 0x497836B: setlocale (setlocale.c:337) ==138095== by 0x109056: main (first.c:157) ==138095== ==138095== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138095== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138095== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138095== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138095== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138095== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138095== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138095== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138095== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138095== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138095== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138095== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138095== by 0x497836B: setlocale (setlocale.c:337) ==138095== by 0x109056: main (first.c:157) ==138095== ==138095== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138095== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138095== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138095== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138095== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138095== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138095== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138095== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138095== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138095== by 0x497836B: setlocale (setlocale.c:337) ==138095== by 0x109056: main (first.c:157) ==138095== ==138095== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138095== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138095== by 0x48DC163: Curl_open (url.c:510) ==138095== by 0x487CCEF: curl_easy_init (easy.c:368) ==138095== by 0x10909B: UnknownInlinedFun (lib1594.c:40) ==138095== by 0x10909B: UnknownInlinedFun (lib1594.c:31) ==138095== by 0x10909B: main (first.c:178) ==138095== ==138095== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138095== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138095== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138095== by 0x4A58EC8: tsearch (tsearch.c:290) ==138095== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138095== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138095== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138095== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138095== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138095== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138095== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138095== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138095== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138095== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138095== by 0x497836B: setlocale (setlocale.c:337) ==138095== by 0x109056: main (first.c:157) ==138095== ==138095== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138095== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138095== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138095== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138095== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138095== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138095== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138095== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138095== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138095== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138095== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138095== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138095== by 0x497836B: setlocale (setlocale.c:337) ==138095== by 0x109056: main (first.c:157) ==138095== === End of file valgrind1594 CMD (33792): ../libtool --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/valgrind1613 ../src/curl -q --output log/4/curl1613.out --include --trace-ascii log/4/trace1613 --trace-time --request-target '*' -X OPTIONS --proxy http://127.0.0.1:41947/ -H "Testno: 1613" http://www.example.org/ > log/4/stdout1613 2> log/4/stderr1613 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/7/valgrind1595 ./libtest/lib1594 http://127.0.0.1:35853/1595 > log/7/stdout1595 2> log/7/stderr1595 1595: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:24.835051547 +0200 +++ log/7/check-generated 2024-05-23 11:17:24.835051547 +0200 @@ -1 +0,0 @@ -Retry-After 0[LF] == Contents of files in the log/7/ dir after test 1595 === Start of file check-expected Retry-After 0[LF] === End of file check-expected === Start of file server.cmd Testnum 1595 === End of file server.cmd === Start of file stderr1595 URL: http://127.0.0.1:35853/1595 === End of file stderr1595 === Start of file valgrind1595 ==138192== ==138192== Process terminating with default action of signal 4 (SIGILL) ==138192== Illegal opcode at address 0x48DC18B ==138192== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138192== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138192== by 0x48DC18B: Curl_open (url.c:519) ==138192== by 0x487CCEF: curl_easy_init (easy.c:368) ==138192== by 0x10909B: UnknownInlinedFun (lib1594.c:40) ==138192== by 0x10909B: UnknownInlinedFun (lib1594.c:31) ==138192== by 0x10909B: main (first.c:178) ==138192== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138192== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138192== by 0x4A58EC8: tsearch (tsearch.c:290) ==138192== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138192== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138192== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138192== by 0x497836B: setlocale (setlocale.c:337) ==138192== by 0x109056: main (first.c:157) ==138192== ==138192== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138192== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138192== by 0x4A58EC8: tsearch (tsearch.c:290) ==138192== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138192== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138192== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138192== by 0x497836B: setlocale (setlocale.c:337) ==138192== by 0x109056: main (first.c:157) ==138192== ==138192== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138192== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138192== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138192== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138192== by 0x497836B: setlocale (setlocale.c:337) ==138192== by 0x109056: main (first.c:157) ==138192== ==138192== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138192== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138192== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138192== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138192== by 0x497836B: setlocale (setlocale.c:337) ==138192== by 0x109056: main (first.c:157) ==138192== ==138192== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138192== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138192== by 0x48DC163: Curl_open (url.c:510) ==138192== by 0x487CCEF: curl_easy_init (easy.c:368) ==138192== by 0x10909B: UnknownInlinedFun (lib1594.c:40) ==138192== by 0x10909B: UnknownInlinedFun (lib1594.c:31) ==138192== by 0x10909B: main (first.c:178) ==138192== ==138192== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138192== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138192== by 0x4A58EC8: tsearch (tsearch.c:290) ==138192== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138192== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138192== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138192== by 0x497836B: setlocale (setlocale.c:337) ==138192== by 0x109056: main (first.c:157) ==138192== ==138192== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138192== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138192== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138192== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138192== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138192== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138192== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138192== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138192== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138192== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138192== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138192== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138192== by 0x497836B: setlocale (setlocale.c:337) ==138192== by 0x109056: main (first.c:157) ==138192== === End of file valgrind1595 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/4/valgrind1613 ../src/curl -q --output log/4/curl1613.out --include --trace-ascii log/4/trace1613 --trace-time --request-target '*' -X OPTIONS --proxy http://127.0.0.1:41947/ -H "Testno: 1613" http://www.example.org/ > log/4/stdout1613 2> log/4/stderr1613 1613: 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 1613 === Start of file server.cmd Testnum 1613 === End of file server.cmd === 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/3/valgrind1633 ../src/curl -q --output log/3/curl1633.out --include --trace-ascii log/3/trace1633 --trace-time http://127.0.0.1:46715/1633 -d moo --retry 1 -L > log/3/stdout1633 2> log/3/stderr1633 CMD (33792): ../libtool --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/valgrind1596 ./libtest/lib1596 http://127.0.0.1:44175/1596 > log/12/stdout1596 2> log/12/stderr1596 of file valgrind1613 ==138384== ==138384== Process terminating with default action of signal 4 (SIGILL) ==138384== Illegal opcode at address 0x10B06D ==138384== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138384== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1613 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/3/valgrind1633 ../src/curl -q --output log/3/curl1633.out --include --trace-ascii log/3/trace1633 --trace-time http://127.0.0.1:46715/1633 -d moo --retry 1 -L > log/3/stdout1633 2> log/3/stderr1633 1633: 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 1633 === Start of file server.cmd Testnum 1633 === End of file server.cmd === Start of file valgrind1633 ==138451== ==138451== Process terminating with default action of signal 4 (SIGILL) ==138451== Illegal opcode at address 0x10B06D ==138451== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138451== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1633 CMD (33792): ../libtool --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/valgrind1634 ../src/curl -q --output log/10/curl1634.out --include --trace-ascii log/10/trace1634 --trace-time http://127.0.0.1:36145/1634 --retry 1 --fail > log/10/stdout1634 2> log/10/stderr1634 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/12/valgrind1596 ./libtest/lib1596 http://127.0.0.1:44175/1596 > log/12/stdout1596 2> log/12/stderr1596 1596: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:25.025055450 +0200 +++ log/12/check-generated 2024-05-23 11:17:25.025055450 +0200 @@ -1 +0,0 @@ -Retry-After 172066[LF] == Contents of files in the log/12/ dir after test 1596 === Start of file check-expected Retry-After 172066[LF] === End of file check-expected === Start of file server.cmd Testnum 1596 === End of file server.cmd === Start of file stderr1596 URL: http://127.0.0.1:44175/1596 === End of file stderr1596 === Start of file valgrind1596 ==138248== ==138248== Process terminating with default action of signal 4 (SIGILL) ==138248== Illegal opcode at address 0x48DC18B ==138248== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138248== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138248== by 0x48DC18B: Curl_open (url.c:519) ==138248== by 0x487CCEF: curl_easy_init (easy.c:368) ==138248== by 0x10909B: UnknownInlinedFun (lib1594.c:40) ==138248== by 0x10909B: UnknownInlinedFun (lib1594.c:31) ==138248== by 0x10909B: main (first.c:178) ==138248== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138248== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138248== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138248== by 0x4A58EC8: tsearch (tsearch.c:290) ==138248== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138248== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138248== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138248== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138248== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138248== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138248== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138248== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138248== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138248== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138248== by 0x497836B: setlocale (setlocale.c:337) ==138248== by 0x109056: main (first.c:157) ==138248== ==138248== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138248== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138248== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138248== by 0x4A58EC8: tsearch (tsearch.c:290) ==138248== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138248== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138248== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138248== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138248== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138248== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138248== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138248== by 0x497836B: setlocale (setlocale.c:337) ==138248== by 0x109056: main (first.c:157) ==138248== ==138248== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138248== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138248== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138248== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138248== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138248== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138248== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138248== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138248== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138248== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138248== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138248== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138248== by 0x497836B: setlocale (setlocale.c:337) ==138248== by 0x109056: main (first.c:157) ==138248== ==138248== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138248== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138248== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138248== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138248== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138248== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138248== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138248== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138248== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138248== by 0x497836B: setlocale (setlocale.c:337) ==138248== by 0x109056: main (first.c:157) ==138248== ==138248== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138248== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138248== by 0x48DC163: Curl_open (url.c:510) ==138248== by 0x487CCEF: curl_easy_init (easy.c:368) ==138248== by 0x10909B: UnknownInlinedFun (lib1594.c:40) ==138248== by 0x10909B: UnknownInlinedFun (lib1594.c:31) ==138248== by 0x10909B: main (first.c:178) ==138248== ==138248== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138248== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138248== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138248== by 0x4A58EC8: tsearch (tsearch.c:290) ==138248== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138248== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138248== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138248== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138248== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138248== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138248== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138248== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138248== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138248== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138248== by 0x497836B: setlocale (setlocale.c:337) ==138248== by 0x109056: main (first.c:157) ==138248== ==138248== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138248== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138248== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138248== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138248== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138248== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138248== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138248== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138248== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138248== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138248== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138248== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138248== by 0x497836B: setlocale (setlocale.c:337) ==138248== by 0x109056: main (first.c:157) ==138248== === End of file valgrind1596 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/10/valgrind1634 ../src/curl -q --output log/10/curl1634.out --include --trace-ascii log/10/trace1634 --trace-time http://127.0.0.1:36145/1634 --retry 1 --fail > log/10/stdout1634 2> log/10/stderr1634 1634: 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 1634 === Start of file server.cmd Testnum 1634 === End of file server.cmd === Start of file valgrind1634 ==138503== ==CMD (33792): ../libtool --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/valgrind1670 ../src/curl -q --include --trace-ascii log/8/trace1670 --trace-time http://127.0.0.1:33791/1670 -w '%header{etag} %header{nope} %header{DATE}\n' -o log/8/1670.out > log/8/stdout1670 2> log/8/stderr1670 138503== Process terminating with default action of signal 4 (SIGILL) ==138503== Illegal opcode at address 0x10B06D ==138503== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138503== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1634 CMD (33792): ../libtool --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/valgrind1635 ../src/curl -q --trace-ascii log/2/trace1635 --trace-time http://127.0.0.1:44205/1635 --retry 1 --fail-with-body > log/2/stdout1635 2> log/2/stderr1635 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/8/valgrind1670 ../src/curl -q --include --trace-ascii log/8/trace1670 --trace-time http://127.0.0.1:33791/1670 -w '%header{etag} %header{nope} %header{DATE}\n' -o log/8/1670.out > log/8/stdout1670 2> log/8/stderr1670 1670: stdout FAILED: --- log/8/check-expected 2024-05-23 11:17:25.145057916 +0200 +++ log/8/check-generated 2024-05-23 11:17:25.145057916 +0200 @@ -1 +0,0 @@ -"21025-dc7-39462498" Tue, 09 Nov 2010 14:49:00 GMT[LF] == Contents of files in the log/8/ dir after test 1670 === Start of file check-expected "21025-dc7-39462498" Tue, 09 Nov 2010 14:49:00 GMT[LF] === End of file check-expected === Start of file server.cmd Testnum 1670 === End of file server.cmd === Start of file valgrind1670 ==138587== ==138587== Process terminating with default action of signal 4 (SIGILL) ==138587== Illegal opcode at address 0x10B06D ==138587== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138587== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1670 CMD (33792): ../libtool --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/valgrind1598 ./libtest/lib1598 http://127.0.0.1:33519/bzz/1598 log/5/stdout1598 2> log/5/stderr1598 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/2/valgrind1635 ../src/curl -q --trace-ascii log/2/trace1635 --trace-time http://127.0.0.1:44205/1635 --retry 1 --fail-with-body > log/2/stdout1635 2> log/2/stderr1635 1635: stdout FAILED: --- log/2/check-expected 2024-05-23 11:17:25.151724719 +0200 +++ log/2/check-generated 2024-05-23 11:17:25.151724719 +0200 @@ -1,2 +0,0 @@ -moo[LF] -hey[LF] == Contents of files in the log/2/ dir after test 1635 === Start of file check-expected moo[LF] hey[LF] === End of file check-expected === Start of file server.cmd Testnum 1635 === End of file server.cmd === Start of file valgrind1635 ==138552== ==138552== Process terminating with default action of signal 4 (SIGILL) ==138552== Illegal opcode at address 0x10B06D ==138552== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138552== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1635 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/5/valgrind1598 ./libtest/lib1598 http://127.0.0.1:33519/bzz/1598 log/5/stdout1598 2> log/5/stderr1598 1598: 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 1598 === Start of file server.cmd Testnum 1598 === End of file server.cmd === Start of file stderr1598 URL: http://127.0.0.1:33519/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 ==138313== ==138313== Process terminating with default action of signal 4 (SIGILL) ==138313== Illegal opcode at address 0x48DC18B ==138313== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138313== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138313== by 0x48DC18B: Curl_open (url.c:519) ==138313== by 0x487CCEF: curl_easy_init (easy.c:368) ==138313== by 0x10908F: UnknownInlinedFun (lib1598.c:70) ==138313== by 0x10908F: main (first.c:178) ==138313== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138313== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138313== by 0x4A58EC8: tsearch (tsearch.c:290) ==138313== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138313== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138313== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138313== by 0x497836B: setlocale (setlocale.c:337) ==138313== by 0x10904B: main (first.c:157) ==138313== ==138313== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138313== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138313== by 0x4A58EC8: tsearch (tsearch.c:290) ==138313== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138313== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138313== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138313== by 0x497836B: setlocale (setlocale.c:337) ==138313== by 0x10904B: main (first.c:157) ==138313== ==138313== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138313== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138313== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138313== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138313== by 0x497836B: setlocale (setlocale.c:337) ==138313== by 0x10904B: main (first.c:157) ==138313== ==138313== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138313== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138313== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138313== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138313== by 0x497836B: setlocale (setlocale.c:337) ==138313== by 0x10904B: main (first.c:157) ==138313== ==138313== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138313== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138313== by 0x48DC163: Curl_open (url.c:510) ==138313== by 0x487CCEF: curl_easy_init (easy.c:368) ==138313== by 0x10908F: UnknownInlinedFun (lib1598.c:70) ==138313== by 0x10908F: main (first.c:178) ==138313== ==138313== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138313== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138313== by 0x4A58EC8: tsearch (tsearch.c:290) ==138313== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138313== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138313== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138313== by 0x497836B: setlocale (setlocale.c:337) ==138313== by 0x10904B: main (first.c:157) ==138313== ==138313== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138313== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138313== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138313== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138313== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138313== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138313== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138313== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138313== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138313== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138313== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) =CMD (33792): ../libtool --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/valgrind1597 ./libtest/lib1597 - > log/6/stdout1597 2> log/6/stderr1597 =138313== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138313== by 0x497836B: setlocale (setlocale.c:337) ==138313== by 0x10904B: main (first.c:157) ==138313== === End of file valgrind1598 CMD (33792): ../libtool --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/valgrind1680 ../src/curl -q --include --trace-ascii log/4/trace1680 --trace-time http://127.0.0.1:41947/1680 -o log/4/exist1680 --clobber > log/4/stdout1680 2> log/4/stderr1680 * 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/6/valgrind1597 ./libtest/lib1597 - > log/6/stdout1597 2> log/6/stderr1597 1597: stdout FAILED: --- log/6/check-expected 2024-05-23 11:17:25.168391729 +0200 +++ log/6/check-generated 2024-05-23 11:17:25.168391729 +0200 @@ -1 +0,0 @@ -Tested 15 strings[LF] == Contents of files in the log/6/ dir after test 1597 === Start of file check-expected Tested 15 strings[LF] === End of file check-expected === 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 ==138298== ==138298== Process terminating with default action of signal 4 (SIGILL) ==138298== Illegal opcode at address 0x48DC18B ==138298== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138298== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138298== by 0x48DC18B: Curl_open (url.c:519) ==138298== by 0x487CCEF: curl_easy_init (easy.c:368) ==138298== by 0x10908D: UnknownInlinedFun (lib1597.c:74) ==138298== by 0x10908D: UnknownInlinedFun (lib1597.c:36) ==138298== by 0x10908D: main (first.c:178) ==138298== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138298== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138298== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138298== by 0x4A58EC8: tsearch (tsearch.c:290) ==138298== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138298== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138298== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138298== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138298== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138298== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138298== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138298== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138298== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138298== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138298== by 0x497836B: setlocale (setlocale.c:337) ==138298== by 0x10904B: main (first.c:157) ==138298== ==138298== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138298== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138298== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138298== by 0x4A58EC8: tsearch (tsearch.c:290) ==138298== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138298== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138298== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138298== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138298== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138298== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138298== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138298== by 0x497836B: setlocale (setlocale.c:337) ==138298== by 0x10904B: main (first.c:157) ==138298== ==138298== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138298== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138298== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138298== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138298== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138298== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138298== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138298== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138298== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138298== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138298== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138298== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138298== by 0x497836B: setlocale (setlocale.c:337) ==138298== by 0x10904B: main (first.c:157) ==138298== ==138298== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138298== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138298== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138298== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138298== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138298== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138298== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138298== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138298== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138298== by 0x497836B: setlocale (setlocale.c:337) ==138298== by 0x10904B: main (first.c:157) ==138298== ==138298== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138298== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138298== by 0x48DC163: Curl_open (url.c:510) ==138298== by 0x487CCEF: curl_easy_init (easy.c:368) ==138298== by 0x10908D: UnknownInlinedFun (lib1597.c:74) ==138298== by 0x10908D: UnknownInlinedFun (lib1597.c:36) ==138298== by 0x10908D: main (first.c:178) ==138298== ==138298== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138298== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138298== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138298== by 0x4A58EC8: tsearch (tsearch.c:290) ==138298== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138298== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138298== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138298== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138298== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138298== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138298== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138298== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138298== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138298== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138298== by 0x497836B: setlocale (setlocale.c:337) ==138298== by 0x10904B: main (first.c:157) ==138298== ==138298== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138298== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138298== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138298== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138298== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138298== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138298== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138298== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138298== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138298== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138298== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138298== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138298== by 0x497836B: setlocale (setlocale.c:337) ==138298== by 0x10904B: main (first.c:157) ==138298== === End of file valgrind1597 CMD (33792): ../libtool --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/valgrind1671 ../src/curl -q --include --trace-ascii log/7/trace1671 --trace-time http://127.0.0.1:35853/1671 -w '%{header_json}\n' -o log/7/1671.out > log/7/stdout1671 2> log/7/stderr1671 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/4/valgrind1680 ../src/curl -q --include --trace-ascii log/4/trace1680 --trace-time http://127.0.0.1:41947/1680 -o log/4/exist1680 --clobber > log/4/stdout1680 2> log/4/stderr1680 1680: output (log/4/exist1680) FAILED: --- log/4/check-expected 2024-05-23 11:17:25.328395015 +0200 +++ log/4/check-generated 2024-05-23 11:17:25.328395015 +0200 @@ -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/4/ 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 exist1680 to be overwritten === End of file exist1680 === Start of file server.cmd Testnum 1680 === End of file server.cmd === Start of file valgrind1680 ==138663== ==138663== Process terminating with default action of signal 4 (SIGILL) ==138663== Illegal opcode at address 0x10B06D ==138663== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138663== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1680 CMD (33792): ../libtool --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/valgrind1681 ../src/curl -q --include --trace-ascii log/3/trace1681 --trace-time http://127.0.0.1:46715/1681 -o log/3/exist1681 --no-clobber -w '%{filename_effective}\n' > log/3/stdout1681 2> log/3/stderr1681 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/7/valgrind1671 ../src/curl -q --include --trace-ascii log/7/trace1671 --trace-time http://127.0.0.1:35853/1671 -w '%{header_json}\n' -o log/7/1671.out > log/7/stdout1671 2> log/7/stderr1671 1671: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:25.331728417 +0200 +++ log/7/check-generated 2024-05-23 11:17:25.331728417 +0200 @@ -1,11 +0,0 @@ -{"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] -"set-cookie":["firstcookie=want1; path=/","2cookie=want2; path=/","cookie3=want3; path=/"],[LF] -"funny-head":["yesyes"],[LF] -"content-type":["text/html"],[LF] -"content-length":["6"],[LF] -"connection":["close"][LF] -}[LF] == Contents of files in the log/7/ dir after test 1671 === Start of file check-expected {"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] "set-cookie":["firstcookie=want1; path=/","2cookie=want2; path=/","cookie3=want3; path=/"],[LF] "funny-head":["yesyes"],[LF] "content-type":["text/html"],[LF] "content-length":["6"],[LF] "connection":["close"][LF] }[LF] === End of file check-expected === Start of file server.cmd Testnum 1671 === End of file server.cmd === Start of file valgrind1671 ==138662== ==138662== Process terminating with default action of signal 4 (SIGILL) ==138662== Illegal opcode at address 0x10B06D ==138662== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138662== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1671 startnew: perl -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 33169 (log/1/server/ftp_server.port) RUN: ../src/curl --max-time 13 --silent --verbose --globoff "ftp://127.0.0.1:33169/verifiedserver" 2>log/1/ftp_verify.log RUN: Verifying our test ftp server took 0 seconds RUN: FTP server is PID 138442 port 33169 * pid ftp => 138442 138442 CMD (33792): ../libtool --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/valgrind1682 ../src/curl -q --include --trace-ascii log/12/trace1682 --trace-time http://127.0.0.1:44175/1682 --output-dir log/12 -o exist1682 --no-clobber > log/12/stdout1682 2> log/12/stderr1682 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/3/valgrind1681 ../src/curl -q --include --trace-ascii log/3/trace1681 --trace-time http://127.0.0.1:46715/1681 -o log/3/exist1681 --no-clobber -w '%{filename_effective}\n' > log/3/stdout1681 2> log/3/stderr1681 1681: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:25.518398918 +0200 +++ log/3/check-generated 2024-05-23 11:17:25.518398918 +0200 @@ -1 +0,0 @@ -log/3/exist1681.1[LF] == Contents of files in the log/3/ dir after test 1681 === Start of file check-expected log/3/exist1681.1[LF] === End of file check-expected === Start of file exist1681 to stay the same === End of file exist1681 === Start of file server.cmd Testnum 1681 === End of file server.cmd === Start of file valgrind1681 ==138765== ==138765== Process terminating with default action of signal 4 (SIGILL) ==138765== Illegal opcode at address 0x10B06D ==138765== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138765== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1681 CMD (33792): ../libtool --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/valgrind1683 ../src/curl -q --include --trace-ascii log/10/trace1683 --trace-time http://127.0.0.1:36145/1683 -o log/10/exist1683 --no-clobber > log/10/stdout1683 2> log/10/stderr1683 CMD (0): perl -e 'for my $i ((1..100)) { my $filename = "log/10/exist1683.$i"; open(FH, "<", $filename) or die $!; ( eq "to stay the same" and eq "") or die "incorrect $filename" ; close(FH) }' 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/12/valgrind1682 ../src/curl -q --include --trace-ascii log/12/trace1682 --trace-time http://127.0.0.1:44175/1682 --output-dir log/12 -o exist1682 --no-clobber > log/12/stdout1682 2> log/12/stderr1682 1682: output (log/12/exist1682.1) FAILED: --- log/12/check-expected 2024-05-23 11:17:25.525065722 +0200 +++ log/12/check-generated 2024-05-23 11:17:25.525065722 +0200 @@ -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/12/ 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 exist1682 to stay the same === End of file exist1682 === Start of file server.cmd Testnum 1682 === End of file server.cmd === Start of file valgrind1682 ==138774== ==138774== Process terminating with default action of signal 4 (SIGILL) ==138774== Illegal opcode at address 0x10B06D ==138774== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138774== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1682 prechecked /usr/bin/perl -e 'for my $i ((1..100)) { my $filename = "log/10/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/10/valgrind1683 ../src/curl -q --include --trace-ascii log/10/trace1683 --trace-time http://127.0.0.1:36145/1683 -o log/10/exist1683 --no-clobber > log/10/stdout1683 2> log/10/stderr1683 postcheck perl -e 'for my $i ((1..100)) { my $filename = "log/10/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/10/ dir after test 1683 === 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 same === 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 CMD (33792): ../libtool --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/valgrind1704 ../src/curl -q --output log/6/curl1704.out --include --trace-ascii log/6/trace1704 --trace-time http://127.0.0.1:42657/1704 --http2 > log/6/stdout1704 2> log/6/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/4/valgrind1800 ../src/curl -q --output log/4/curl1800.out --include --trace-ascii log/4/trace1800 --trace-time http://127.0.0.1:41947/1800 --http2 > log/4/stdout1800 2> log/4/stderr1800 RUN: Process with pid 75073 forced to die with SIGKILL 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 server.cmd Testnum 1683 === End of file server.cmd === Start of file valgrind1683 ==138866== ==138866== Process terminating with default action of signal 4 (SIGILL) ==138866== Illegal opcode at address 0x10B06D ==138866== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138866== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1683 test 1704...[HTTP/1 doing HTTP/2 Upgrade: getting a 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/6/valgrind1704 ../src/curl -q --output log/6/curl1704.out --include --trace-ascii log/6/trace1704 --trace-time http://127.0.0.1:42657/1704 --http2 > log/6/stdout1704 2> log/6/stderr1704 1704: 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 1704 === Start of file server.cmd Testnum 1704 === End of file server.cmd === Start of file valgrind1704 ==138932== ==138932== Process terminating with default action of signal 4 (SIGILL) ==138932== Illegal opcode at address 0x10B06D ==138932== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138932== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1704 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/4/valgrind1800 ../src/curl -q --output log/4/curl1800.out --include --trace-ascii log/4/trace1800 --trace-time http://127.0.0.1:41947/1800 --http2 > log/4/stdout1800 2> log/4/stderr1800 1800: 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 1800 === Start of file server.cmd Testnum 1800 === End of file server.cmd === Start of file valgrind1800 ==138987== ==138987== Process terminating with default action of signal 4 (SIGILL) ==138987== Illegal opcode at address 0x10B06D ==138987== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==138987== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1800 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/11/valgrind1523 ./libtest/lib1523 http://127.0.0.1:35843/1523 > log/11/stdout1523 2> log/11/stderr1523 lib1523 returned 132, when expecting 0 1523: exit FAILED == Contents of files in the log/11/ dir after test 1523 === Start of file http_server.log 11:17:20.367665 exit_signal_handler: 15 11:17:20.367744 signalled to die 11:17:20.367803 ========> IPv4 sws (port 35843 pid: 75073) exits with signal (15) 11:17:20.367815 ========> sws quits === End of file http_server.log === Start of file server.cmd writedelay: 1000 Testnum 1523 === End of file server.cmd === Start of file stderr1523 URL: http://127.0.0.1:35843/1523 === End of file stderr1523 === Start of file valgrind1523 ==135989== ==135989== Process terminating with default action of signal 4 (SIGILL) ==135989== Illegal opcode at address 0x48DC18B ==135989== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==135989== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==135989== by 0x48DC18B: Curl_open (url.c:519) ==135989== by 0x487CCEF: curl_easy_init (easy.c:368) ==135989== by 0x10909C: UnknownInlinedFun (lib1523.c:64) ==135989== by 0x10909C: main (first.c:178) ==135989== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==135989== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135989== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135989== by 0x4A58EC8: tsearch (tsearch.c:290) ==135989== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135989== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135989== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135989== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135989== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135989== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135989== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135989== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135989== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135989== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135989== by 0x497836B: setlocale (setlocale.c:337) ==135989== by 0x109059: main (first.c:157) ==135989== ==135989== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==135989== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135989== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135989== by 0x4A58EC8: tsearch (tsearch.c:290) ==135989== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135989== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135989== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135989== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135989== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135989== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135989== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135989== by 0x497836B: setlocale (setlocale.c:337) ==135989== by 0x109059: main (first.c:157) ==135989== ==135989== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==135989== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135989== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135989== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135989== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135989== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135989== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135989== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==135989== by 0x49CMD (33792): ../libtool --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/valgrind1900 ./libtest/lib1900 http://127.0.0.1:47/not-there/1900 > log/7/stdout1900 2> log/7/stderr1900 DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135989== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135989== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135989== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135989== by 0x497836B: setlocale (setlocale.c:337) ==135989== by 0x109059: main (first.c:157) ==135989== ==135989== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==135989== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135989== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135989== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==135989== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==135989== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135989== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135989== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135989== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135989== by 0x497836B: setlocale (setlocale.c:337) ==135989== by 0x109059: main (first.c:157) ==135989== ==135989== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==135989== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==135989== by 0x48DC163: Curl_open (url.c:510) ==135989== by 0x487CCEF: curl_easy_init (easy.c:368) ==135989== by 0x10909C: UnknownInlinedFun (lib1523.c:64) ==135989== by 0x10909C: main (first.c:178) ==135989== ==135989== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==135989== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135989== by 0x4A58EC8: __tsearch (tsearch.c:337) ==135989== by 0x4A58EC8: tsearch (tsearch.c:290) ==135989== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==135989== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135989== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135989== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135989== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135989== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135989== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135989== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135989== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135989== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135989== by 0x497836B: setlocale (setlocale.c:337) ==135989== by 0x109059: main (first.c:157) ==135989== ==135989== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==135989== at 0x4842788: malloc (vg_replace_malloc.c:446) ==135989== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==135989== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==135989== by 0x496C9A2: add_alias (gconv_conf.c:178) ==135989== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135989== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135989== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==135989== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135989== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135989== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==135989== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==135989== by 0x497836B: setlocale (setlocale.c:337) ==135989== by 0x109059: main (first.c:157) ==135989== === End of file valgrind1523 * 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/7/valgrind1900 ./libtest/lib1900 http://127.0.0.1:47/not-there/1900 > log/7/stdout1900 2> log/7/stderr1900 lib1900 returned 132, when expecting 0 1900: exit FAILED == Contents of files in the log/7/ dir after test 1900 === 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 ==138988== ==138988== Process terminating with default action of signal 4 (SIGILL) ==138988== Illegal opcode at address 0x48DC18B ==138988== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==138988== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==138988== by 0x48DC18B: Curl_open (url.c:519) ==138988== by 0x487CCEF: curl_easy_init (easy.c:368) ==138988== by 0x10908B: UnknownInlinedFun (lib1900.c:38) ==138988== by 0x10908B: UnknownInlinedFun (lib1900.c:30) ==138988== by 0x10908B: main (first.c:178) ==138988== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==138988== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138988== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138988== by 0x4A58EC8: tsearch (tsearch.c:290) ==138988== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138988== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138988== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138988== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138988== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138988== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138988== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138988== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138988== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138988== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138988== by 0x497836B: setlocale (setlocale.c:337) ==138988== by 0x109045: main (first.c:157) ==138988== ==138988== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==138988== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138988== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138988== by 0x4A58EC8: tsearch (tsearch.c:290) ==138988== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138988== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138988== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138988== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138988== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138988== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138988== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138988== by 0x497836B: setlocale (setlocale.c:337) ==138988== by 0x109045: main (first.c:157) ==138988== ==138988== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==138988== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138988== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138988== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138988== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138988== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138988== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==138988== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==138988== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138988== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138988== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138988== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138988== by 0x497836B: setlocale (setlocale.c:337) ==138988== by 0x109045: main (first.c:157) ==138988== ==138988== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==138988== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138988== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138988== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==138988== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==138988== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138988== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138988== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138988== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138988== by 0x497CMD (33792): ../libtool --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/valgrind1906 ./libtest/lib1906 http://127.0.0.1:42657/1906 > log/6/stdout1906 2> log/6/stderr1906 836B: setlocale (setlocale.c:337) ==138988== by 0x109045: main (first.c:157) ==138988== ==138988== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==138988== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==138988== by 0x48DC163: Curl_open (url.c:510) ==138988== by 0x487CCEF: curl_easy_init (easy.c:368) ==138988== by 0x10908B: UnknownInlinedFun (lib1900.c:38) ==138988== by 0x10908B: UnknownInlinedFun (lib1900.c:30) ==138988== by 0x10908B: main (first.c:178) ==138988== ==138988== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==138988== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138988== by 0x4A58EC8: __tsearch (tsearch.c:337) ==138988== by 0x4A58EC8: tsearch (tsearch.c:290) ==138988== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==138988== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138988== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138988== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138988== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138988== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138988== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138988== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138988== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138988== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138988== by 0x497836B: setlocale (setlocale.c:337) ==138988== by 0x109045: main (first.c:157) ==138988== ==138988== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==138988== at 0x4842788: malloc (vg_replace_malloc.c:446) ==138988== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==138988== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==138988== by 0x496C9A2: add_alias (gconv_conf.c:178) ==138988== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==138988== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==138988== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==138988== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==138988== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==138988== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==138988== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==138988== by 0x497836B: setlocale (setlocale.c:337) ==138988== by 0x109045: main (first.c:157) ==138988== === End of file valgrind1900 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/6/valgrind1906 ./libtest/lib1906 http://127.0.0.1:42657/1906 > log/6/stdout1906 2> log/6/stderr1906 1906: 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 1906 === Start of file server.cmd Testnum 1906 === End of file server.cmd === Start of file stderr1906 URL: http://127.0.0.1:42657/1906 === End of file stderr1906 === Start of file valgrind1906 ==139245== ==139245== Process terminating with default action of signal 4 (SIGILL) ==139245== Illegal opcode at address 0x1091FB ==139245== at 0x1091FB: test (lib1906.c:35) ==139245== by 0x109076: main (first.c:178) ==139245== 88 bytes in 1 blocks are definitely lost in loss record 5 of 30 ==139245== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139245== by 0x1091F6: test (lib1906.c:34) ==139245== by 0x109076: main (first.c:178) ==139245== ==139245== 408 bytes in 17 blocks are possibly lost in loss record 10 of 30 ==139245== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139245== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139245== by 0x4A58EC8: tsearch (tsearch.c:290) ==139245== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139245== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139245== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139245== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139245== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139245== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139245== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139245== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139245== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139245== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139245== by 0x497836B: setlocale (setlocale.c:337) ==139245== by 0x109047: main (first.c:157) ==139245== ==139245== 552 bytes in 23 blocks are possibly lost in loss record 12 of 30 ==139245== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139245== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139245== by 0x4A58EC8: tsearch (tsearch.c:290) ==139245== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139245== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139245== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139245== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139245== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139245== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139245== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139245== by 0x497836B: setlocale (setlocale.c:337) ==139245== by 0x109047: main (first.c:157) ==139245== ==139245== 681 bytes in 17 blocks are possibly lost in loss record 15 of 30 ==139245== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139245== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139245== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139245== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139245== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139245== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139245== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139245== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139245== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139245== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139245== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139245== by 0x497836B: setlocale (setlocale.c:337) ==139245== by 0x109047: main (first.c:157) ==139245== ==139245== 1,018 bytes in 23 blocks are possibly lost in loss record 20 of 30 ==139245== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139245== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139245== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139245== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139245== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139245== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139245== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139245== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139245== by 0x497836B: setlocale (setlocale.c:337) ==139245== by 0x109047: main (first.c:157) ==139245== ==139245== 11,664 bytes in 486 blocks are possibly lost in loss record 27 of 30 ==139245== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139245== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139245== by 0x4A58EC8: tsearch (tsearch.c:290) ==139245== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139245== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139245== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139245== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139245== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139245== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139245== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139245== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139245== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139245== 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/1/valgrind1901 ./libtest/lib1901 http://127.0.0.1:39283/boom > log/1/stdout1901 2> log/1/stderr1901 x4975ABD: _nl_find_locale (findlocale.c:291) ==139245== by 0x497836B: setlocale (setlocale.c:337) ==139245== by 0x109047: main (first.c:157) ==139245== ==139245== 18,800 bytes in 486 blocks are possibly lost in loss record 29 of 30 ==139245== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139245== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139245== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139245== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139245== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139245== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139245== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139245== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139245== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139245== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139245== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139245== by 0x497836B: setlocale (setlocale.c:337) ==139245== by 0x109047: main (first.c:157) ==139245== === End of file valgrind1906 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/1/valgrind1901 ./libtest/lib1901 http://127.0.0.1:39283/boom > log/1/stdout1901 2> log/1/stderr1901 1901: 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 1901 === Start of file server.cmd Testnum 1901 === End of file server.cmd === Start of file stderr1901 URL: http://127.0.0.1:39283/boom === End of file stderr1901 === Start of file valgrind1901 ==139096== ==139096== Process terminating with default action of signal 4 (SIGILL) ==139096== Illegal opcode at address 0x48DC18B ==139096== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139096== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139096== by 0x48DC18B: Curl_open (url.c:519) ==139096== by 0x487CCEF: curl_easy_init (easy.c:368) ==139096== by 0x109087: UnknownInlinedFun (lib1901.c:64) ==139096== by 0x109087: main (first.c:178) ==139096== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139096== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139096== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139096== by 0x4A58EC8: tsearch (tsearch.c:290) ==139096== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139096== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139096== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139096== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139096== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139096== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139096== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139096== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139096== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139096== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139096== by 0x497836B: setlocale (setlocale.c:337) ==139096== by 0x10904B: main (first.c:157) ==139096== ==139096== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139096== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139096== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139096== by 0x4A58EC8: tsearch (tsearch.c:290) ==139096== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139096== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139096== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139096== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139096== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139096== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139096== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139096== by 0x497836B: setlocale (setlocale.c:337) ==139096== by 0x10904B: main (first.c:157) ==139096== ==139096== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139096== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139096== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139096== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139096== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139096== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139096== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139096== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139096== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139096== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139096== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139096== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139096== by 0x497836B: setlocale (setlocale.c:337) ==139096== by 0x10904B: main (first.c:157) ==139096== ==139096== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139096== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139096== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139096== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139096== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139096== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139096== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139096== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139096== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139096== by 0x497836B: setlocale (setlocale.c:337) ==139096== by 0x10904B: main (first.c:157) ==139096== ==139096== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139096== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139096== by 0x48DC163: Curl_open (url.c:510) ==139096== by 0x487CCEF: curl_easy_init (easy.c:368) ==139096== by 0x109087: UnknownInlinedFun (lib1901.c:64) ==139096== by 0x109087: main (first.c:178) ==139096== ==139096== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139096== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139096== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139096== by 0x4A58EC8: tsearch (tsearch.c:290) ==139096== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139096== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139096== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139096== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139096== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139096== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139096== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139096== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139096== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139096== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139096== by 0x497836B: setlocale (setlocale.c:337) ==139096== by 0x10904B: main (first.c:157) ==139096== ==139096== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139096== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139096== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139096== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139096== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139096== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139096== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139096== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139096== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139096== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139096== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139096== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==13909CMD (33792): ../libtool --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/valgrind1903 ./libtest/lib1903 http://127.0.0.1:46715/we/want/1903 log/3/cookies1903 log/3/cookiesout1903 > log/3/stdout1903 2> log/3/stderr1903 6== by 0x497836B: setlocale (setlocale.c:337) ==139096== by 0x10904B: main (first.c:157) ==139096== === End of file valgrind1901 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/3/valgrind1903 ./libtest/lib1903 http://127.0.0.1:46715/we/want/1903 log/3/cookies1903 log/3/cookiesout1903 > log/3/stdout1903 2> log/3/stderr1903 1903: output (log/3/cookiesout1903) FAILED: --- log/3/check-expected 2024-05-23 11:17:26.221746700 +0200 +++ log/3/check-generated 2024-05-23 11:17:26.221746700 +0200 @@ -1,6 +0,0 @@ -# Netscape HTTP Cookie File[LF] -# https://curl.se/docs/http-cookies.html[LF] -# This file was generated by libcurl! Edit at your own risk.[LF] -[LF] -127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09foobar%09name[LF] -127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09secondcookie%09present[LF] == Contents of files in the log/3/ dir after test 1903 === Start of file check-expected # Netscape HTTP Cookie File[LF] # https://curl.se/docs/http-cookies.html[LF] # This file was generated by libcurl! Edit at your own risk.[LF] [LF] 127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09foobar%09name[LF] 127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09secondcookie%09present[LF] === End of file check-expected === 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 server.cmd Testnum 1903 === End of file server.cmd === Start of file stderr1903 URL: http://127.0.0.1:46715/we/want/1903 === End of file stderr1903 === Start of file valgrind1903 ==139146== ==139146== Process terminating with default action of signal 4 (SIGILL) ==139146== Illegal opcode at address 0x48DC18B ==139146== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139146== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139146== by 0x48DC18B: Curl_open (url.c:519) ==139146== by 0x487CCEF: curl_easy_init (easy.c:368) ==139146== by 0x1090AD: UnknownInlinedFun (lib1903.c:37) ==139146== by 0x1090AD: UnknownInlinedFun (lib1903.c:31) ==139146== by 0x1090AD: main (first.c:178) ==139146== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139146== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139146== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139146== by 0x4A58EC8: tsearch (tsearch.c:290) ==139146== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139146== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139146== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139146== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139146== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139146== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139146== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139146== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139146== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139146== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139146== by 0x497836B: setlocale (setlocale.c:337) ==139146== by 0x109045: main (first.c:157) ==139146== ==139146== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139146== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139146== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139146== by 0x4A58EC8: tsearch (tsearch.c:290) ==139146== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139146== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139146== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139146== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139146== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139146== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139146== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139146== by 0x497836B: setlocale (setlocale.c:337) ==139146== by 0x109045: main (first.c:157) ==139146== ==139146== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139146== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139146== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139146== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139146== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139146== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139146== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139146== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139146== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139146== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139146== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139146== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139146== by 0x497836B: setlocale (setlocale.c:337) ==139146== by 0x109045: main (first.c:157) ==139146== ==139146== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139146== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139146== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139146== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139146== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139146== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139146== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139146== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139146== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139146== by 0x497836B: setlocale (setlocale.c:337) ==139146== by 0x109045: main (first.c:157) ==139146== ==139146== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139146== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139146== by 0x48DC163: Curl_open (url.c:510) ==139146== by 0x487CCEF: curl_easy_init (easy.c:368) ==139146== by 0x1090AD: UnknownInlinedFun (lib1903.c:37) ==139146== by 0x1090AD: UnknownInlinedFun (lib1903.c:31) ==139146== by 0x1090AD: main (first.c:178) ==139146== ==139146== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139146== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139146== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139146== by 0x4A58EC8: tsearch (tsearch.c:290) ==139146== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139146== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139146== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139146== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139146== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139146== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139146== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139146== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139146== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139146== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139146== by 0x497836B: setlocale (setlocale.c:337) ==139146== by 0x109045: main (first.c:157) ==139146== ==139146== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139146== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139146== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139146== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139146== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139146== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139146== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139146== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139146== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139146== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139146== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139146== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==1391CMD (33792): ../libtool --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/valgrind1905 ./libtest/lib1905 http://127.0.0.1:36145/we/want/1905 log/10/cookies1905 > log/10/stdout1905 2> log/10/stderr1905 CMD (33792): ../libtool --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/valgrind1907 ./libtest/lib1907 127.0.0.1:41947/hello/../1907 > log/4/stdout1907 2> log/4/stderr1907 46== by 0x497836B: setlocale (setlocale.c:337) ==139146== by 0x109045: main (first.c:157) ==139146== === End of file valgrind1903 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/10/valgrind1905 ./libtest/lib1905 http://127.0.0.1:36145/we/want/1905 log/10/cookies1905 > log/10/stdout1905 2> log/10/stderr1905 1905: 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 1905 === Start of file server.cmd Testnum 1905 === End of file server.cmd === Start of file stderr1905 URL: http://127.0.0.1:36145/we/want/1905 === End of file stderr1905 === Start of file valgrind1905 ==139196== ==139196== Process terminating with default action of signal 4 (SIGILL) ==139196== Illegal opcode at address 0x48DC18B ==139196== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139196== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139196== by 0x48DC18B: Curl_open (url.c:519) ==139196== by 0x487CCEF: curl_easy_init (easy.c:368) ==139196== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==139196== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==139196== by 0x10921C: test (lib1905.c:40) ==139196== by 0x109087: main (first.c:178) ==139196== 408 bytes in 17 blocks are possibly lost in loss record 600 of 651 ==139196== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139196== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139196== by 0x4A58EC8: tsearch (tsearch.c:290) ==139196== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139196== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139196== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139196== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139196== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139196== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139196== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139196== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139196== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139196== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139196== by 0x497836B: setlocale (setlocale.c:337) ==139196== by 0x109047: main (first.c:157) ==139196== ==139196== 552 bytes in 23 blocks are possibly lost in loss record 606 of 651 ==139196== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139196== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139196== by 0x4A58EC8: tsearch (tsearch.c:290) ==139196== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139196== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139196== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139196== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139196== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139196== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139196== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139196== by 0x497836B: setlocale (setlocale.c:337) ==139196== by 0x109047: main (first.c:157) ==139196== ==139196== 681 bytes in 17 blocks are possibly lost in loss record 612 of 651 ==139196== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139196== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139196== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139196== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139196== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139196== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139196== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139196== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139196== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139196== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139196== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139196== by 0x497836B: setlocale (setlocale.c:337) ==139196== by 0x109047: main (first.c:157) ==139196== ==139196== 1,018 bytes in 23 blocks are possibly lost in loss record 626 of 651 ==139196== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139196== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139196== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139196== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139196== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139196== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139196== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139196== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139196== by 0x497836B: setlocale (setlocale.c:337) ==139196== by 0x109047: main (first.c:157) ==139196== ==139196== 5,288 bytes in 1 blocks are definitely lost in loss record 645 of 651 ==139196== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139196== by 0x48DC163: Curl_open (url.c:510) ==139196== by 0x487CCEF: curl_easy_init (easy.c:368) ==139196== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==139196== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==139196== by 0x10921C: test (lib1905.c:40) ==139196== by 0x109087: main (first.c:178) ==139196== ==139196== 11,664 bytes in 486 blocks are possibly lost in loss record 648 of 651 ==139196== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139196== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139196== by 0x4A58EC8: tsearch (tsearch.c:290) ==139196== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139196== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139196== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139196== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139196== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139196== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139196== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139196== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139196== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139196== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139196== by 0x497836B: setlocale (setlocale.c:337) ==139196== by 0x109047: main (first.c:157) ==139196== ==139196== 18,800 bytes in 486 blocks are possibly lost in loss record 650 of 651 ==139196== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139196== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139196== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139196== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139196== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139196== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139196== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139196== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139196== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139196== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139196== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139196== by 0x497836B: setlocale (setlocale.c:337) ==139196== by 0x109047: main (first.c:157) ==139196== === End of file valgrind1905 CMD (0): ../src/curl --max-time 13 --output log/12/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:45503/verifiedserver" 2>log/12/http2_verify.log 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/valgrind1912 ./libtest/lib1912 - > log/1/stdout1912 2> log/1/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/6/valgrind1911 ./libtest/lib1911 - > log/6/stdout1911 2> log/6/stderr1911 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/4/valgrind1907 ./libtest/lib1907 127.0.0.1:41947/hello/../1907 > log/4/stdout1907 2> log/4/stderr1907 1907: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:26.368416381 +0200 +++ log/4/check-generated 2024-05-23 11:17:26.368416381 +0200 @@ -1 +0,0 @@ -Effective URL: http://127.0.0.1:41947/1907[LF] == Contents of files in the log/4/ dir after test 1907 === Start of file check-expected Effective URL: http://127.0.0.1:41947/1907[LF] === End of file check-expected === Start of file server.cmd Testnum 1907 === End of file server.cmd === Start of file stderr1907 URL: 127.0.0.1:41947/hello/../1907 === End of file stderr1907 === Start of file valgrind1907 ==139295== ==139295== Process terminating with default action of signal 4 (SIGILL) ==139295== Illegal opcode at address 0x1091E8 ==139295== at 0x1091E8: test (lib1907.c:35) ==139295== by 0x109076: main (first.c:178) ==139295== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==139295== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139295== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139295== by 0x4A58EC8: tsearch (tsearch.c:290) ==139295== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139295== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139295== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139295== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139295== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139295== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139295== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139295== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139295== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139295== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139295== by 0x497836B: setlocale (setlocale.c:337) ==139295== by 0x109047: main (first.c:157) ==139295== ==139295== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==139295== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139295== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139295== by 0x4A58EC8: tsearch (tsearch.c:290) ==139295== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139295== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139295== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139295== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139295== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139295== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139295== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139295== by 0x497836B: setlocale (setlocale.c:337) ==139295== by 0x109047: main (first.c:157) ==139295== ==139295== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==139295== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139295== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139295== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139295== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139295== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139295== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139295== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139295== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139295== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139295== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139295== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139295== by 0x497836B: setlocale (setlocale.c:337) ==139295== by 0x109047: main (first.c:157) ==139295== ==139295== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==139295== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139295== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139295== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139295== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139295== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139295== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139295== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139295== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139295== by 0x497836B: setlocale (setlocale.c:337) ==139295== by 0x109047: main (first.c:157) ==139295== ==139295== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==139295== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139295== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139295== by 0x4A58EC8: tsearch (tsearch.c:290) ==139295== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139295== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139295== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139295== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139295== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139295== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139295== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139295== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139295== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139295== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139295== by 0x497836B: setlocale (setlocale.c:337) ==139295== by 0x109047: main (first.c:157) ==139295== ==139295== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==139295== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139295== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139295== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139295== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139295== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139295== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139295== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139295== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139295== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139295== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139295== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139295== by 0x497836B: setlocale (setlocale.c:337) ==139295== by 0x109047: main (first.c:157) ==139295== === End of file valgrind1907 * 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/1/valgrind1912 ./libtest/lib1912 - > log/1/stdout1912 2> log/1/stderr1912 -------e-v- OK (1380 out of 1513, remaining: 00:10, took 0.445s, duration: 01:44) * 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/6/valgrind1911 ./libtest/lib1911 - > log/6/stdout1911 2> log/6/stderr1911 lib1911 returned 132, when expecting 0 1911: exit FAILED == Contents of files in the log/6/ dir after test 1911 === 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 ==139391== ==139391== Process terminating with default action of signal 4 (SIGILL) ==139391== Illegal opcode at address 0x48DC18B ==139391== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139391== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139391== by 0x48DC18B: Curl_open (url.c:519) ==139391== by 0x487CCEF: curl_easy_init (easy.c:368) ==139391== by 0x109082: UnknownInlinedFun (lib191CMD (33792): ../libtool --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/valgrind1910 ./libtest/lib1910 127.0.0.1:35853/1910 > log/7/stdout1910 2> log/7/stderr1910 CMD (33792): ../libtool --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/valgrind1913 ./libtest/lib1913 ftp://127.0.0.1:45493/not-there/1913 > log/3/stdout1913 2> log/3/stderr1913 1.c:44) ==139391== by 0x109082: main (first.c:178) ==139391== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139391== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139391== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139391== by 0x4A58EC8: tsearch (tsearch.c:290) ==139391== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139391== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139391== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139391== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139391== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139391== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139391== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139391== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139391== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139391== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139391== by 0x497836B: setlocale (setlocale.c:337) ==139391== by 0x10904B: main (first.c:157) ==139391== ==139391== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139391== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139391== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139391== by 0x4A58EC8: tsearch (tsearch.c:290) ==139391== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139391== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139391== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139391== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139391== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139391== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139391== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139391== by 0x497836B: setlocale (setlocale.c:337) ==139391== by 0x10904B: main (first.c:157) ==139391== ==139391== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139391== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139391== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139391== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139391== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139391== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139391== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139391== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139391== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139391== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139391== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139391== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139391== by 0x497836B: setlocale (setlocale.c:337) ==139391== by 0x10904B: main (first.c:157) ==139391== ==139391== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139391== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139391== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139391== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139391== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139391== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139391== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139391== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139391== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139391== by 0x497836B: setlocale (setlocale.c:337) ==139391== by 0x10904B: main (first.c:157) ==139391== ==139391== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139391== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139391== by 0x48DC163: Curl_open (url.c:510) ==139391== by 0x487CCEF: curl_easy_init (easy.c:368) ==139391== by 0x109082: UnknownInlinedFun (lib1911.c:44) ==139391== by 0x109082: main (first.c:178) ==139391== ==139391== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139391== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139391== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139391== by 0x4A58EC8: tsearch (tsearch.c:290) ==139391== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139391== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139391== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139391== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139391== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139391== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139391== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139391== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139391== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139391== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139391== by 0x497836B: setlocale (setlocale.c:337) ==139391== by 0x10904B: main (first.c:157) ==139391== ==139391== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139391== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139391== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139391== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139391== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139391== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139391== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139391== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139391== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139391== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139391== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139391== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139391== by 0x497836B: setlocale (setlocale.c:337) ==139391== by 0x10904B: main (first.c:157) ==139391== === End of file valgrind1911 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/7/valgrind1910 ./libtest/lib1910 127.0.0.1:35853/1910 > log/7/stdout1910 2> log/7/stderr1910 1910: 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 1910 === Start of file server.cmd Testnum 1910 === End of file server.cmd === Start of file stderr1910 URL: 127.0.0.1:35853/1910 === End of file stderr1910 === Start of file valgrind1910 ==139352== ==139352== Process terminating with default action of signal 4 (SIGILL) ==139352== Illegal opcode at address 0x48DC18B ==139352== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139352== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139352== by 0x48DC18B: Curl_open (url.c:519) ==139352== by 0x487CCEF: curl_easy_init (easy.c:368) ==139352== by 0x1090AB: UnknownInlinedFun (lib1910.c:38) ==139352== by 0x1090AB: main (first.c:178) ==139352== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139352== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139352== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139352== by 0x4A58EC8: tsearch (tsearch.c:290) ==139352== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139352== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139352== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139352== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139352== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139352== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139352== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139352== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139352== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139352== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139352== by 0x497836B: setlocale (setlocale.c:337) ==139352== by 0x109056: main (first.c:157) ==139352== ==139352== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139352== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139352== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139352== by 0x4A58EC8: tsearch (tsearch.c:290) ==139352== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139352== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139352== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139352== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139352== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139352== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139352== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139352== by 0x497836B: setlocale (setlocale.c:337) ==139352== by 0x109056: main (first.c:157) ==139352== ==139352== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139352== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139352== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139352== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139352== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139352== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139352== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139352== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139352== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139352== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139352== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139352== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139352== by 0x497836B: setlocale (setlocale.c:337) ==139352== by 0x109056: main (first.c:157) ==139352== ==139352== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139352== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139352== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139352== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139352== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139352== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139352== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139352== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139352== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139352== by 0x497836B: setlocale (setlocale.c:337) ==139352== by 0x109056: main (first.c:157) ==139352== ==139352== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139352== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139352== by 0x48DC163: Curl_open (url.c:510) ==139352== by 0x487CCEF: curl_easy_init (easy.c:368) ==139352== by 0x1090AB: UnknownInlinedFun (lib1910.c:38) ==139352== by 0x1090AB: main (first.c:178) ==139352== ==139352== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139352== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139352== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139352== by 0x4A58EC8: tsearch (tsearch.c:290) ==139352== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139352== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139352== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139352== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139352== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139352== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139352== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139352== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139352== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139352== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139352== by 0x497836B: setlocale (setlocale.c:337) ==139352== by 0x109056: main (first.c:157) ==139352== ==139352== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139352== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139352== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139352== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139352== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139352== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139352== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139352== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139352== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139352== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139352== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139352== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139352== by 0x497836B: setlocale (setlocale.c:337) ==139352== by 0x109056: main (first.c:157) ==139352== === End of file valgrind1910 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/3/valgrind1913 ./libtest/lib1913 ftp://127.0.0.1:45493/not-there/1913 > log/3/stdout1913 2> log/3/stderr1913 lib1913 returned 132, when expecting 78 1913: exit FAILED == Contents of files in the log/3/ dir after test 1913 === 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:45493/not-there/1913 === End of file stderr1913 === Start of file valgrind1913 ==139468== ==139468== Process terminating with default action of signal 4 (SIGILL) ==139468== Illegal opcode at address 0x48DC18B ==139468== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139468== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139468== by 0x48DC18B: Curl_open (url.c:519) ==139468== by 0x487CCEF: curl_easy_init (easy.c:368) ==139468== by 0x1090BC: UnknownInlinedFun (lib1913.c:38) ==139468== by 0x1090BC: main (first.c:178) ==139468== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139468== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139468== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139468== by 0x4A58EC8: tsearch (tsearch.c:290) ==139468== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139468== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139468== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139468== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139468== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139468== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139468== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139468== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139468== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139468== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139468== by 0x497836B: setlocale (setlocale.c:337) ==139468== by 0x109056: main (first.c:157) ==139468== ==139468== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139468== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139468== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139468== by 0x4A58EC8: tsearch (tsearch.c:290) ==139468== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139468== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139468== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139468== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139468== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139468== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139468== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139468== by 0x497836B: setlocale (setlocale.c:337) ==139468== by 0x109056: main (first.c:157) ==139468== ==139468== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139468== at 0x4842788: malloc (vg_replace_malloCMD (33792): ../libtool --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/valgrind1914 ./libtest/lib1913 ftp://127.0.0.1:33661/not-there/1913 1 > log/10/stdout1914 2> log/10/stderr1914 c.c:446) ==139468== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139468== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139468== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139468== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139468== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139468== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139468== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139468== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139468== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139468== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139468== by 0x497836B: setlocale (setlocale.c:337) ==139468== by 0x109056: main (first.c:157) ==139468== ==139468== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139468== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139468== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139468== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139468== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139468== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139468== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139468== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139468== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139468== by 0x497836B: setlocale (setlocale.c:337) ==139468== by 0x109056: main (first.c:157) ==139468== ==139468== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139468== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139468== by 0x48DC163: Curl_open (url.c:510) ==139468== by 0x487CCEF: curl_easy_init (easy.c:368) ==139468== by 0x1090BC: UnknownInlinedFun (lib1913.c:38) ==139468== by 0x1090BC: main (first.c:178) ==139468== ==139468== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139468== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139468== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139468== by 0x4A58EC8: tsearch (tsearch.c:290) ==139468== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139468== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139468== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139468== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139468== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139468== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139468== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139468== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139468== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139468== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139468== by 0x497836B: setlocale (setlocale.c:337) ==139468== by 0x109056: main (first.c:157) ==139468== ==139468== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139468== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139468== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139468== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139468== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139468== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139468== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139468== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139468== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139468== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139468== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139468== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139468== by 0x497836B: setlocale (setlocale.c:337) ==139468== by 0x109056: main (first.c:157) ==139468== === End of file valgrind1913 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/10/valgrind1914 ./libtest/lib1913 ftp://127.0.0.1:33661/not-there/1913 1 > log/10/stdout1914 2> log/10/stderr1914 lib1913 returned 132, when expecting 78 1914: exit FAILED == Contents of files in the log/10/ dir after test 1914 === 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:33661/not-there/1913 === End of file stderr1914 === Start of file valgrind1914 ==139513== ==139513== Process terminating with default action of signal 4 (SIGILL) ==139513== Illegal opcode at address 0x48DC18B ==139513== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139513== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139513== by 0x48DC18B: Curl_open (url.c:519) ==139513== by 0x487CCEF: curl_easy_init (easy.c:368) ==139513== by 0x1090BC: UnknownInlinedFun (lib1913.c:38) ==139513== by 0x1090BC: main (first.c:178) ==139513== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139513== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139513== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139513== by 0x4A58EC8: tsearch (tsearch.c:290) ==139513== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139513== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139513== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139513== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139513== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139513== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139513== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139513== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139513== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139513== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139513== by 0x497836B: setlocale (setlocale.c:337) ==139513== by 0x109056: main (first.c:157) ==139513== ==139513== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139513== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139513== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139513== by 0x4A58EC8: tsearch (tsearch.c:290) ==139513== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139513== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139513== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139513== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139513== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139513== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139513== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139513== by 0x497836B: setlocale (setlocale.c:337) ==139513== by 0x109056: main (first.c:157) ==139513== ==139513== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139513== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139513== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139513== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139513== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139513== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139513== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139513== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139513== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139513== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139513== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139513== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139513== by 0x497836B: setlocale (setlocale.c:337) ==139513== by 0x109056: main (first.c:157) ==139513== ==139513== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139513== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139513== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==1395CMD (0): ../src/curl --max-time 13 --output log/11/http_verify.out --silent --verbose --globoff "http://127.0.0.1:39499/verifiedserver" 2>log/11/http_verify.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/12/valgrind1904 ../src/curl -q --output log/12/curl1904.out --include --trace-ascii log/12/trace1904 --trace-time http://test.1904:44175/we/want/that/page/1904 -p --proxy 127.0.0.1:45503 > log/12/stdout1904 2> log/12/stderr1904 CMD (33792): ../libtool --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/valgrind1915 ./libtest/lib1915 http://127.0.0.1:47/not-there/1915 > log/4/stdout1915 2> log/4/stderr1915 13== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139513== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139513== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139513== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139513== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139513== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139513== by 0x497836B: setlocale (setlocale.c:337) ==139513== by 0x109056: main (first.c:157) ==139513== ==139513== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139513== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139513== by 0x48DC163: Curl_open (url.c:510) ==139513== by 0x487CCEF: curl_easy_init (easy.c:368) ==139513== by 0x1090BC: UnknownInlinedFun (lib1913.c:38) ==139513== by 0x1090BC: main (first.c:178) ==139513== ==139513== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139513== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139513== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139513== by 0x4A58EC8: tsearch (tsearch.c:290) ==139513== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139513== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139513== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139513== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139513== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139513== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139513== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139513== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139513== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139513== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139513== by 0x497836B: setlocale (setlocale.c:337) ==139513== by 0x109056: main (first.c:157) ==139513== ==139513== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139513== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139513== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139513== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139513== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139513== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139513== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139513== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139513== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139513== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139513== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139513== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139513== by 0x497836B: setlocale (setlocale.c:337) ==139513== by 0x109056: main (first.c:157) ==139513== === End of file valgrind1914 startnew: perl -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: ../src/curl --max-time 13 --output log/12/http2_verify.out --silent --verbose --globoff "http://127.0.0.1:45503/verifiedserver" 2>log/12/http2_verify.log RUN: HTTP2 server is on PID 139144 port 45503 * pid http-proxy => 139144 139144 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/12/valgrind1904 ../src/curl -q --output log/12/curl1904.out --include --trace-ascii log/12/trace1904 --trace-time http://test.1904:44175/we/want/that/page/1904 -p --proxy 127.0.0.1:45503 > log/12/stdout1904 2> log/12/stderr1904 1904: 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 1904 === Start of file http2_server.log 11:17:25.066578 Run as proxy, CONNECT to host 127.0.0.1 11:17:25.066747 Running HTTP IPv4 version on port 45503 11:17:25.066774 Wrote pid 139144 to log/12/server/http2_server.pid 11:17:25.066792 Wrote port 45503 to log/12/server/http2_server.port 11:17:26.071630 ====> Client connect 11:17:26.071647 accept_connection 3 returned 4 11:17:26.071657 accept_connection 3 returned 0 11:17:26.071667 Read 92 bytes 11:17:26.071676 Process 92 bytes request 11:17:26.071690 Got request: GET /verifiedserver HTTP/1.1 11:17:26.071695 Are-we-friendly question received 11:17:26.071709 Wrote request (92 bytes) input to log/12/proxy.input 11:17:26.071723 Identifying ourselves as friends 11:17:26.071769 Response sent (57 bytes) and written to log/12/proxy.response 11:17:26.071775 special request received, no persistency 11:17:26.071780 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:45503... * Connected to 127.0.0.1 (127.0.0.1) port 45503 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45503 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [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: 139144 === End of file http2_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 139144 === End of file proxy.response === Start of file server.cmd Testnum 1904 === End of file server.cmd === Start of file valgrind1904 ==139650== ==139650== Process terminating with default action of signal 4 (SIGILL) ==139650== Illegal opcode at address 0x10B06D ==139650== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==139650== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1904 CMD (33792): ../libtool --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/valgrind1916 ./libtest/lib1916 "mqtt://127.0.0.1:44675/%20" > log/1/stdout1916 2> log/1/stderr1916 * 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/4/valgrind1915 ./libtest/lib1915 http://127.0.0.1:47/not-there/1915 > log/4/stdout1915 2> log/4/stderr1915 1915: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:27.151765807 +0200 +++ log/4/check-generated 2024-05-23 11:17:27.151765807 +0200 @@ -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/4/ 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 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 ==139586== ==139586== Process terminating with default action of signal 4 (SIGILL) ==139586== Illegal opcode at address 0x48DC18B ==139586== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139586== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139586== by 0x48DC18B: Curl_open (url.c:519) ==139586== by 0x487CCEF: curl_easy_init (easy.c:368) ==139586== by 0x1090A5: UnknownInlinedFun (lib1915.c:107) ==139586== by 0x1090A5: main (first.c:178) ==139586== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139586== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139586== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139586== by 0x4A58EC8: tsearch (tsearch.c:290) ==139586== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139586== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139586== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139586== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139586== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139586== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139586== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139586== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139586== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139586== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139586== by 0x497836B: setlocale (setlocale.c:337) ==139586== by 0x109058: main (first.c:157) ==139586== ==139586== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139586== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139586== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139586== by 0x4A58EC8: tsearch (tsearch.c:290) ==139586== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139586== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139586== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139586== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139586== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139586== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139586== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139586== by 0x497836B: setlocale (setlocale.c:337) ==139586== by 0x109058: main (first.c:157) ==139586== ==139586== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139586== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139586== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139586== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139586== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139586== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139586== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139586== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139586== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139586== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139586== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139586== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139586== by 0x497836B: setlocale (setlocale.c:337) ==139586== by 0x109058: main (first.c:157) ==139586== ==139586== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139586== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139586== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139586== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139586== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139586== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139586== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139586== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139586== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139586== by 0x497836B: setlocale (setlocale.c:337) ==139586== by 0x109058: main (first.c:157) ==139586== ==139586== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139586== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139586== by 0x48DC163: Curl_open (url.c:510) ==139586== by 0x487CCEF: curl_easy_init (easy.c:368) ==139586== by 0x1090A5: UnknownInlinedFun (lib1915.c:107) ==139586== by 0x1090A5: main (first.c:178) ==139586== ==139586== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139586== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139586== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139586== by 0x4A58EC8: tsearch (tsearch.c:290) ==139586== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139586== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139586== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139586== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139586== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139586== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139586== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139586== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139586== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139586== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139586== by 0x497836B: setlocale (setlocale.c:337) ==139586== by 0x109058: main (first.c:157) ==139586== ==139586== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139586== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139586== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139586== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139586== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139586== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139586== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139586== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139586== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139586== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139586== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139586== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139586== by 0x497836B: setlocale (setlocale.c:337) ==139586== by 0x109058: main (first.c:157) ==139586== === End of file valgrind1915 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/1/valgrind1916 ./libtest/lib1916 "mqtt://127.0.0.1:44675/%20" > log/1/stdout1916 2> log/1/stderr1916 1916: protocol FAILED! There was no content at all in the file log/1/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/11/valgrind1909 ../src/curl -q --trace-ascii log/11/trace1909 --trace-time --retry 1 --retry-all-errors -o log/11/outfile1909 http://127.0.0.1:39499/1909 > log/11/stdout1909 2> log/11/stderr1909 2 == Contents of files in the log/1/ dir after test 1916 === Start of file server.cmd Testnum 1916 === End of file server.cmd === Start of file stderr1916 URL: mqtt://127.0.0.1:44675/%20 === End of file stderr1916 === Start of file valgrind1916 ==139705== ==139705== Process terminating with default action of signal 4 (SIGILL) ==139705== Illegal opcode at address 0x48DC18B ==139705== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139705== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139705== by 0x48DC18B: Curl_open (url.c:519) ==139705== by 0x487CCEF: curl_easy_init (easy.c:368) ==139705== by 0x109094: UnknownInlinedFun (lib1916.c:39) ==139705== by 0x109094: main (first.c:178) ==139705== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139705== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139705== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139705== by 0x4A58EC8: tsearch (tsearch.c:290) ==139705== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139705== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139705== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139705== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139705== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139705== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139705== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139705== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139705== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139705== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139705== by 0x497836B: setlocale (setlocale.c:337) ==139705== by 0x10904E: main (first.c:157) ==139705== ==139705== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139705== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139705== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139705== by 0x4A58EC8: tsearch (tsearch.c:290) ==139705== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139705== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139705== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139705== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139705== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139705== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139705== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139705== by 0x497836B: setlocale (setlocale.c:337) ==139705== by 0x10904E: main (first.c:157) ==139705== ==139705== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139705== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139705== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139705== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139705== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139705== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139705== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139705== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139705== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139705== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139705== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139705== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139705== by 0x497836B: setlocale (setlocale.c:337) ==139705== by 0x10904E: main (first.c:157) ==139705== ==139705== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139705== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139705== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139705== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139705== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139705== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139705== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139705== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139705== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139705== by 0x497836B: setlocale (setlocale.c:337) ==139705== by 0x10904E: main (first.c:157) ==139705== ==139705== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139705== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139705== by 0x48DC163: Curl_open (url.c:510) ==139705== by 0x487CCEF: curl_easy_init (easy.c:368) ==139705== by 0x109094: UnknownInlinedFun (lib1916.c:39) ==139705== by 0x109094: main (first.c:178) ==139705== ==139705== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139705== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139705== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139705== by 0x4A58EC8: tsearch (tsearch.c:290) ==139705== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139705== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139705== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139705== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139705== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139705== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139705== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139705== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139705== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139705== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139705== by 0x497836B: setlocale (setlocale.c:337) ==139705== by 0x10904E: main (first.c:157) ==139705== ==139705== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139705== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139705== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139705== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139705== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139705== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139705== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139705== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139705== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139705== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139705== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139705== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139705== by 0x497836B: setlocale (setlocale.c:337) ==139705== by 0x10904E: main (first.c:157) ==139705== === End of file valgrind1916 startnew: perl -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: ../src/curl --max-time 13 --output log/11/http_verify.out --silent --verbose --globoff "http://127.0.0.1:39499/verifiedserver" 2>log/11/http_verify.log RUN: HTTP server is on PID 139345 port 39499 * pid http => 139345 139345 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/11/valgrind1909 ../src/curl -q --trace-ascii log/11/trace1909 --trace-time --retry 1 --retry-all-errors -o log/11/outfile1909 http://127.0.0.1:39499/1909 > log/11/stdout1909 2> log/11/stderr1909 1909: 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 1909 === Start of file http_server.log 11:17:25.498290 Running HTTP IPv4 version on port 39499 11:17:25.498381 Wrote pid 139345 to log/11/server/http_server.pid 11:17:25.498401 Wrote port 39499 to log/11/server/http_server.port 11:17:26.500225 ====> Client connect 11:17:26.500243 accept_connection 3 returnedCMD (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/valgrind1918 ./libtest/lib1918 - > log/7/stdout1918 2> log/7/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/3/valgrind1919 ./libtest/lib1919 http://127.0.0.1:46715/1919 > log/3/stdout1919 2> log/3/stderr1919 4 11:17:26.500254 accept_connection 3 returned 0 11:17:26.500265 Read 92 bytes 11:17:26.500272 Process 92 bytes request 11:17:26.500288 Got request: GET /verifiedserver HTTP/1.1 11:17:26.500294 Are-we-friendly question received 11:17:26.500312 Wrote request (92 bytes) input to log/11/server.input 11:17:26.500329 Identifying ourselves as friends 11:17:26.500380 Response sent (57 bytes) and written to log/11/server.response 11:17:26.500387 special request received, no persistency 11:17:26.500394 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39499... * Connected to 127.0.0.1 (127.0.0.1) port 39499 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39499 > User-Agent: curl/8.8.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: 139345 === 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: 18 WE ROOLZ: 139345 === End of file server.response === Start of file valgrind1909 ==139951== ==139951== Process terminating with default action of signal 4 (SIGILL) ==139951== Illegal opcode at address 0x10B06D ==139951== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==139951== by 0x10B06D: main (tool_main.c:234) === End of file valgrind1909 * 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/7/valgrind1918 ./libtest/lib1918 - > log/7/stdout1918 2> log/7/stderr1918 -------e-v- OK (1386 out of 1513, remaining: 00:09, took 0.800s, duration: 01:46) 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/3/valgrind1919 ./libtest/lib1919 http://127.0.0.1:46715/1919 > log/3/stdout1919 2> log/3/stderr1919 1919: 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 1919 === Start of file server.cmd Testnum 1919 === End of file server.cmd === Start of file stderr1919 URL: http://127.0.0.1:46715/1919 === End of file stderr1919 === Start of file valgrind1919 ==139794== ==139794== Process terminating with default action of signal 4 (SIGILL) ==139794== Illegal opcode at address 0x48DC18B ==139794== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139794== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139794== by 0x48DC18B: Curl_open (url.c:519) ==139794== by 0x487CCEF: curl_easy_init (easy.c:368) ==139794== by 0x10908B: UnknownInlinedFun (lib1919.c:37) ==139794== by 0x10908B: UnknownInlinedFun (lib1919.c:30) ==139794== by 0x10908B: main (first.c:178) ==139794== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139794== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139794== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139794== by 0x4A58EC8: tsearch (tsearch.c:290) ==139794== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139794== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139794== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139794== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139794== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139794== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139794== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139794== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139794== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139794== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139794== by 0x497836B: setlocale (setlocale.c:337) ==139794== by 0x109045: main (first.c:157) ==139794== ==139794== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139794== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139794== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139794== by 0x4A58EC8: tsearch (tsearch.c:290) ==139794== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139794== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139794== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139794== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139794== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139794== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139794== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139794== by 0x497836B: setlocale (setlocale.c:337) ==139794== by 0x109045: main (first.c:157) ==139794== ==139794== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139794== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139794== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139794== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139794== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139794== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139794== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139794== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139794== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139794== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139794== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139794== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139794== by 0x497836B: setlocale (setlocale.c:337) ==139794== by 0x109045: main (first.c:157) ==139794== ==139794== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139794== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139794== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139794== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139794== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139794== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139794== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139794== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139794== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139794== by 0x497836B: setlocale (setlocale.c:337) ==139794== by 0x109045: main (first.c:157) ==139794== ==139794== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139794== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139794== by 0x48DC163: Curl_open (url.c:510) ==139794== by 0x487CCEF: curl_easy_init (easy.c:368) ==139794== by 0x10908B: UnknownInlinedFun (lib1919.c:37) ==139794== by 0x10908B: UnknownInlinedFun (lib1919.c:30) ==139794== by 0x10908B: main (first.c:178) ==139794== ==139794== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139794== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139794== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139794== by 0x4A58EC8: tsearch (tsearch.c:290) ==139794== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139794== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139794== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139794== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139794== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139794== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139794== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139794== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139794== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139794== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139794== 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/10/valgrind1940 ./libtest/lib1940 http://127.0.0.1:36145/1940 > log/10/stdout1940 2> log/10/stderr1940 CMD (33792): ../libtool --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/valgrind1917 ./libtest/lib1917 "mqtt://127.0.0.1:45003/%20" > log/6/stdout1917 2> log/6/stderr1917 x497836B: setlocale (setlocale.c:337) ==139794== by 0x109045: main (first.c:157) ==139794== ==139794== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139794== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139794== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139794== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139794== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139794== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139794== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139794== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139794== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139794== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139794== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139794== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139794== by 0x497836B: setlocale (setlocale.c:337) ==139794== by 0x109045: main (first.c:157) ==139794== === 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/10/valgrind1940 ./libtest/lib1940 http://127.0.0.1:36145/1940 > log/10/stdout1940 2> log/10/stderr1940 1940: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:27.785112150 +0200 +++ log/10/check-generated 2024-05-23 11:17:27.785112150 +0200 @@ -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/10/ 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 server.cmd Testnum 1940 === End of file server.cmd === Start of file stderr1940 URL: http://127.0.0.1:36145/1940 === End of file stderr1940 === Start of file valgrind1940 ==139813== ==139813== Process terminating with default action of signal 4 (SIGILL) ==139813== Illegal opcode at address 0x48DC18B ==139813== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139813== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139813== by 0x48DC18B: Curl_open (url.c:519) ==139813== by 0x487CCEF: curl_easy_init (easy.c:368) ==139813== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==139813== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==139813== by 0x10909C: main (first.c:178) ==139813== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139813== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139813== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139813== by 0x4A58EC8: tsearch (tsearch.c:290) ==139813== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139813== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139813== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139813== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139813== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139813== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139813== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139813== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139813== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139813== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139813== by 0x497836B: setlocale (setlocale.c:337) ==139813== by 0x109045: main (first.c:157) ==139813== ==139813== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139813== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139813== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139813== by 0x4A58EC8: tsearch (tsearch.c:290) ==139813== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139813== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139813== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139813== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139813== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139813== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139813== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139813== by 0x497836B: setlocale (setlocale.c:337) ==139813== by 0x109045: main (first.c:157) ==139813== ==139813== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139813== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139813== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139813== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139813== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139813== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139813== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139813== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139813== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139813== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139813== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139813== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139813== by 0x497836B: setlocale (setlocale.c:337) ==139813== by 0x109045: main (first.c:157) ==139813== ==139813== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139813== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139813== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139813== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139813== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139813== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139813== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139813== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139813== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139813== by 0x497836B: setlocale (setlocale.c:337) ==139813== by 0x109045: main (first.c:157) ==139813== ==139813== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139813== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139813== by 0x48DC163: Curl_open (url.c:510) ==139813== by 0x487CCEF: curl_easy_init (easy.c:368) ==139813== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==139813== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==139813== by 0x10909C: main (first.c:178) ==139813== ==139813== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139813== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139813== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139813== by 0x4A58EC8: tsearch (tsearch.c:290) ==139813== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139813== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139813== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139813== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139813== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139813== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139813== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139813== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139813== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139813== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139813== by 0x497836B: setlocale (setlocale.c:337) ==139813== by 0x109045: main (first.c:157) ==139813== ==139813== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139813== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139813== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139813== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139813== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139813== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139813== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139813== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139813== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139813== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139813== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139813== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139813== by 0x497836B: setlocale (setlocale.c:337) ==139813== by 0x109045: main (first.c:157) ==139813== === End of file valgrind1940 test 1917...[MQTT PUBLISH with CURLOPT_POST set (no payload)] ../libtool --mode=execute /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/12/valgrind1941 ./libtest/lib1940 http://hello:44175/1941 127.0.0.1:45503 > log/12/stdout1941 2> log/12/stderr1941 sr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1917 ./libtest/lib1917 "mqtt://127.0.0.1:45003/%20" > log/6/stdout1917 2> log/6/stderr1917 1917: 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 1917 === Start of file server.cmd Testnum 1917 === End of file server.cmd === Start of file stderr1917 URL: mqtt://127.0.0.1:45003/%20 === End of file stderr1917 === Start of file valgrind1917 ==139758== ==139758== Process terminating with default action of signal 4 (SIGILL) ==139758== Illegal opcode at address 0x48DC18B ==139758== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139758== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139758== by 0x48DC18B: Curl_open (url.c:519) ==139758== by 0x487CCEF: curl_easy_init (easy.c:368) ==139758== by 0x109087: UnknownInlinedFun (lib1916.c:39) ==139758== by 0x109087: main (first.c:178) ==139758== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139758== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139758== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139758== by 0x4A58EC8: tsearch (tsearch.c:290) ==139758== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139758== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139758== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139758== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139758== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139758== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139758== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139758== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139758== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139758== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139758== by 0x497836B: setlocale (setlocale.c:337) ==139758== by 0x109045: main (first.c:157) ==139758== ==139758== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139758== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139758== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139758== by 0x4A58EC8: tsearch (tsearch.c:290) ==139758== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139758== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139758== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139758== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139758== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139758== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139758== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139758== by 0x497836B: setlocale (setlocale.c:337) ==139758== by 0x109045: main (first.c:157) ==139758== ==139758== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139758== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139758== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139758== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139758== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139758== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139758== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139758== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139758== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139758== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139758== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139758== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139758== by 0x497836B: setlocale (setlocale.c:337) ==139758== by 0x109045: main (first.c:157) ==139758== ==139758== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139758== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139758== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139758== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139758== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139758== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139758== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139758== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139758== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139758== by 0x497836B: setlocale (setlocale.c:337) ==139758== by 0x109045: main (first.c:157) ==139758== ==139758== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139758== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139758== by 0x48DC163: Curl_open (url.c:510) ==139758== by 0x487CCEF: curl_easy_init (easy.c:368) ==139758== by 0x109087: UnknownInlinedFun (lib1916.c:39) ==139758== by 0x109087: main (first.c:178) ==139758== ==139758== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139758== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139758== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139758== by 0x4A58EC8: tsearch (tsearch.c:290) ==139758== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139758== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139758== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139758== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139758== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139758== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139758== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139758== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139758== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139758== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139758== by 0x497836B: setlocale (setlocale.c:337) ==139758== by 0x109045: main (first.c:157) ==139758== ==139758== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139758== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139758== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139758== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139758== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139758== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139758== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139758== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139758== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139758== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139758== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139758== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139758== by 0x497836B: setlocale (setlocale.c:337) ==139758== by 0x109045: main (first.c:157) ==139758== === End of file valgrind1917 CMD (33792): ../libtool --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/valgrind1942 ./libtest/lib1940 http://127.0.0.1:41947/1942 > log/4/stdout1942 2> log/4/stderr1942 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/12/valgrind1941 ./libtest/lib1940 http://hello:44175/1941 127.0.0.1:45503 > log/12/stdout1941 2> log/12/stderr1941 1941: stdout FAILED: --- log/12/check-expected 2024-05-23 11:17:27.795112356 +0200 +++ log/12/check-generated 2024-05-23 11:17:27.795112356 +0200 @@ -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/12/ 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 server.cmd Testnum 1941 === End of file server.cmd === Start of file stderr1941 URL: http://hello:44175/1941 === End of file stderr1941 === Start of file valgrind1941 ==139975== ==139975== Process terminating with default action of signal 4 (SIGILL) ==139975== Illegal opcode at address 0x48DC18B ==139975== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==139975== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==139975== by 0x48DC18B: Curl_open (url.c:519) ==139975== by 0x487CCEF: curl_easy_init (easy.c:368) ==139975== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==139975== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==139975== by 0x10909C: main (first.c:178) ==139975== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==139975== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139975== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139975== by 0x4A58EC8: tsearch (tsearch.c:290) ==139975== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139975== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139975== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139975== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139975== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139975== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139975== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139975== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139975== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139975== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139975== by 0x497836B: setlocale (setlocale.c:337) ==139975== by 0x109045: main (first.c:157) ==139975== ==139975== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==139975== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139975== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139975== by 0x4A58EC8: tsearch (tsearch.c:290) ==139975== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139975== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139975== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139975== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139975== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139975== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139975== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139975== by 0x497836B: setlocale (setlocale.c:337) ==139975== by 0x109045: main (first.c:157) ==139975== ==139975== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==139975== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139975== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139975== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139975== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139975== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139975== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==139975== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==139975== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139975== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139975== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139975== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139975== by 0x497836B: setlocale (setlocale.c:337) ==139975== by 0x109045: main (first.c:157) ==139975== ==139975== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==139975== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139975== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139975== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==139975== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==139975== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139975== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139975== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139975== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139975== by 0x497836B: setlocale (setlocale.c:337) ==139975== by 0x109045: main (first.c:157) ==139975== ==139975== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==139975== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==139975== by 0x48DC163: Curl_open (url.c:510) ==139975== by 0x487CCEF: curl_easy_init (easy.c:368) ==139975== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==139975== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==139975== by 0x10909C: main (first.c:178) ==139975== ==139975== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==139975== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139975== by 0x4A58EC8: __tsearch (tsearch.c:337) ==139975== by 0x4A58EC8: tsearch (tsearch.c:290) ==139975== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==139975== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139975== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139975== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139975== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139975== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139975== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139975== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139975== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139975== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139975== by 0x497836B: setlocale (setlocale.c:337) ==139975== by 0x109045: main (first.c:157) ==139975== ==139975== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==139975== at 0x4842788: malloc (vg_replace_malloc.c:446) ==139975== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==139975== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==139975== by 0x496C9A2: add_alias (gconv_conf.c:178) ==139975== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==139975== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==139975== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==139975== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==139975== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==139975== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==139975== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==139975== by 0x497836B: setlocale (setlocale.c:337) ==139975== by 0x109045: main (first.c:157) ==139975== === 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/11/valgrind1944 ./libtest/lib1940 http://127.0.0.1:39499/1944 > log/11/stdout1944 2> log/11/stderr1944 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/4/valgrind1942 ./libtest/lib1940 http://127.0.0.1:41947/1942 > log/4/stdout1942 2> log/4/stderr1942 1942: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:27.991783063 +0200 +++ log/4/check-generated 2024-05-23 11:17:27.991783063 +0200 @@ -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/4/ 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 server.cmd Testnum 1942 === End of file server.cmd === Start of file stderr1942 URL: http://127.0.0.1:41947/1942 === End of file stderr1942 === Start of file valgrind1942 ==140057== ==140057== Process terminating with default action of signal 4 (SIGILL) ==140057== Illegal opcode at address 0x48DC18B ==140057== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140057== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140057== by 0x48DC18B: Curl_open (url.c:519) ==140057== by 0x487CCEF: curl_easy_init (easy.c:368) ==140057== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140057== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140057== by 0x10909C: main (first.c:178) ==140057== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140057== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140057== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140057== by 0x4A58EC8: tsearch (tsearch.c:290) ==140057== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140057== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140057== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140057== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140057== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140057== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140057== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140057== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140057== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140057== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140057== by 0x497836B: setlocale (setlocale.c:337) ==140057== by 0x109045: main (first.c:157) ==140057== ==140057== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140057== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140057== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140057== by 0x4A58EC8: tsearch (tsearch.c:290) ==140057== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140057== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140057== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140057== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140057== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140057== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140057== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140057== by 0x497836B: setlocale (setlocale.c:337) ==140057== by 0x109045: main (first.c:157) ==140057== ==140057== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140057== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140057== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140057== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140057== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140057== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140057== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140057== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140057== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140057== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140057== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140057== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140057== by 0x497836B: setlocale (setlocale.c:337) ==140057== by 0x109045: main (first.c:157) ==140057== ==140057== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140057== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140057== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140057== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140057== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140057== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140057== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140057== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140057== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140057== by 0x497836B: setlocale (setlocale.c:337) ==140057== by 0x109045: main (first.c:157) ==140057== ==140057== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140057== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140057== by 0x48DC163: Curl_open (url.c:510) ==140057== by 0x487CCEF: curl_easy_init (easy.c:368) ==140057== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140057== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140057== by 0x10909C: main (first.c:178) ==140057== ==140057== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140057== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140057== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140057== by 0x4A58EC8: tsearch (tsearch.c:290) ==140057== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140057== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140057== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140057== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140057== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140057== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140057== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140057== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140057== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140057== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140057== by 0x497836B: setlocale (setlocale.c:337) ==140057== by 0x109045: main (first.c:157) ==140057== ==140057== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140057== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140057== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140057== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140057== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140057== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140057== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140057== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140057== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140057== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140057== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140057== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140057== by 0x497836B: setlocale (setlocale.c:337) ==140057== by 0x109045: main (first.c:157) ==140057== === End of file valgrind1942 CMD (33792): ../libtool --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/valgrind1943 ./libtest/lib1940 http://127.0.0.1:39283/1943 > log/1/stdout1943 2> log/1/stderr1943 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/11/valgrind1944 ./libtest/lib1940 http://127.0.0.1:39499/1944 > log/11/stdout1944 2> log/11/stderr1944 1944: stdout FAILED: --- log/11/check-expected 2024-05-23 11:17:28.328456647 +0200 +++ log/11/check-generated 2024-05-23 11:17:28.328456647 +0200 @@ -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/11/ 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 server.cmd Testnum 1944 === End of file server.cmd === Start of file stderr1944 URL: http://127.0.0.1:39499/1944 === End of file stderr1944 === Start of file valgrind1944 ==140129== ==140129== Process terminating with default action of signal 4 (SIGILL) ==140129== Illegal opcode at address 0x48DC18B ==140129== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140129== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140129== by 0x48DC18B: Curl_open (url.c:519) ==140129== by 0x487CCEF: curl_easy_init (easy.c:368) ==140129== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140129== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140129== by 0x10909C: main (first.c:178) ==140129== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140129== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140129== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140129== by 0x4A58EC8: tsearch (tsearch.c:290) ==140129== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140129== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140129== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140129== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140129== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140129== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140129== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140129== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140129== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140129== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140129== by 0x497836B: setlocale (setlocale.c:337) ==140129== by 0x109045: main (first.c:157) ==140129== ==140129== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140129== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140129== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140129== by 0x4A58EC8: tsearch (tsearch.c:290) ==140129== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140129== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140129== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140129== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140129== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140129== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140129== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140129== by 0x497836B: setlocale (setlocale.c:337) ==140129== by 0x109045: main (first.c:157) ==140129== ==140129== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140129== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140129== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140129== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140129== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140129== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140129== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140129== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140129== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140129== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140129== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140129== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140129== by 0x497836B: setlocale (setlocale.c:337) ==140129== by 0x109045: main (first.c:157) ==140129== ==140129== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140129== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140129== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140129== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140129== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140129== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140129== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140129== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140129== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140129== by 0x497836B: setlocale (setlocale.c:337) ==140129== by 0x109045: main (first.c:157) ==140129== ==140129== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140129== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140129== by 0x48DC163: Curl_open (url.c:510) ==140129== by 0x487CCEF: curl_easy_init (easy.c:368) ==140129== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140129== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140129== by 0x10909C: main (first.c:178) ==140129== ==140129== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140129== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140129== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140129== by 0x4A58EC8: tsearch (tsearch.c:290) ==140129== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140129== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140129== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140129== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140129== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140129== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140129== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140129== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140129== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140129== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140129== by 0x497836B: setlocale (setlocale.c:337) ==140129== by 0x109045: main (first.c:157) ==140129== ==140129== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140129== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140129== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140129== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140129== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140129== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140129== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140129== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140129== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140129== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140129== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140129== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140129== by 0x497836B: setlocale (setlocale.c:337) ==140129== by 0x109045: main (first.c:157) ==140129== === End of file valgrind1944 CMD (33792): ../libtool --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/valgrind1946 ./libtest/lib1946 http://127.0.0.1:46715/1946 > log/3/stdout1946 2> log/3/stderr1946 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/1/valgrind1943 ./libtest/lib1940 http://127.0.0.1:39283/1943 > log/1/stdout1943 2> log/1/stderr1943 1943: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:28.331790049 +0200 +++ log/1/check-generated 2024-05-23 11:17:28.331790049 +0200 @@ -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/1/ 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 server.cmd Testnum 1943 === End of file server.cmd === Start of file stderr1943 URL: http://127.0.0.1:39283/1943 === End of file stderr1943 === Start of file valgrind1943 ==140114== ==140114== Process terminating with default action of signal 4 (SIGILL) ==140114== Illegal opcode at address 0x48DC18B ==140114== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140114== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140114== by 0x48DC18B: Curl_open (url.c:519) ==140114== by 0x487CCEF: curl_easy_init (easy.c:368) ==140114== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140114== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140114== by 0x10909C: main (first.c:178) ==140114== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140114== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140114== by 0x4A58EC8: tsearch (tsearch.c:290) ==140114== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140114== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140114== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140114== by 0x497836B: setlocale (setlocale.c:337) ==140114== by 0x109045: main (first.c:157) ==140114== ==140114== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140114== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140114== by 0x4A58EC8: tsearch (tsearch.c:290) ==140114== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140114== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140114== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140114== by 0x497836B: setlocale (setlocale.c:337) ==140114== by 0x109045: main (first.c:157) ==140114== ==140114== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140114== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140114== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140114== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140114== by 0x497836B: setlocale (setlocale.c:337) ==140114== by 0x109045: main (first.c:157) ==140114== ==140114== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140114== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140114== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140114== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140114== by 0x497836B: setlocale (setlocale.c:337) ==140114== by 0x109045: main (first.c:157) ==140114== ==140114== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140114== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140114== by 0x48DC163: Curl_open (url.c:510) ==140114== by 0x487CCEF: curl_easy_init (easy.c:368) ==140114== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140114== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140114== by 0x10909C: main (first.c:178) ==140114== ==140114== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140114== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140114== by 0x4A58EC8: tsearch (tsearch.c:290) ==140114== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140114== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140114== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140114== by 0x497836B: setlocale (setlocale.c:337) ==140114== by 0x109045: main (first.c:157) ==140114== ==140114== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140114== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140114== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140114== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140114== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140114== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140114== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140114== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140114== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140114== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140114== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140114== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140114== by 0x497836B: setlocale (setlocale.c:337) ==140114== by 0x109045: main (first.c:157) ==140114== === End of file valgrind1943 CMD (33792): ../libtool --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/valgrind1945 ./libtest/lib1945 http://hello:35853/1945 127.0.0.1:33971 > log/7/stdout1945 2> log/7/stderr1945 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/3/valgrind1946 ./libtest/lib1946 http://127.0.0.1:46715/1946 > log/3/stdout1946 2> log/3/stderr1946 1946: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:28.571794979 +0200 +++ log/3/check-generated 2024-05-23 11:17:28.571794979 +0200 @@ -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/3/ 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 server.cmd Testnum 1946 === End of file server.cmd === Start of file stderr1946 URL: http://127.0.0.1:46715/1946 === End of file stderr1946 === Start of file valgrind1946 ==140261== ==140261== Process terminating with default action of signal 4 (SIGILL) ==140261== Illegal opcode at address 0x48DC18B ==140261== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140261== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140261== by 0x48DC18B: Curl_open (url.c:519) ==140261== by 0x487CCEF: curl_easy_init (easy.c:368) ==140261== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140261== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140261== by 0x10909C: main (first.c:178) ==140261== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140261== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140261== by 0x4A58EC8: tsearch (tsearch.c:290) ==140261== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140261== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140261== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140261== by 0x497836B: setlocale (setlocale.c:337) ==140261== by 0x109045: main (first.c:157) ==140261== ==140261== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140261== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140261== by 0x4A58EC8: tsearch (tsearch.c:290) ==140261== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140261== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140261== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140261== by 0x497836B: setlocale (setlocale.c:337) ==140261== by 0x109045: main (first.c:157) ==140261== ==140261== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140261== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140261== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140261== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140261== by 0x497836B: setlocale (setlocale.c:337) ==140261== by 0x109045: main (first.c:157) ==140261== ==140261== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140261== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140261== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140261== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140261== by 0x497836B: setlocale (setlocale.c:337) ==140261== by 0x109045: main (first.c:157) ==140261== ==140261== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140261== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140261== by 0x48DC163: Curl_open (url.c:510) ==140261== by 0x487CCEF: curl_easy_init (easy.c:368) ==140261== by 0x10909C: UnknownInlinedFun (lib1940.c:92) ==140261== by 0x10909C: UnknownInlinedFun (lib1940.c:86) ==140261== by 0x10909C: main (first.c:178) ==140261== ==140261== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140261== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140261== by 0x4A58EC8: tsearch (tsearch.c:290) ==140261== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140261== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140261== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140261== by 0x497836B: setlocale (setlocale.c:337) ==140261== by 0x109045: main (first.c:157) ==140261== ==140261== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140261== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140261== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140261== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140261== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140261== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140261== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140261== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140261== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140261== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140261== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140261== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140261== by 0x497836B: setlocale (setlocale.c:337) ==140261== by 0x109045: main (first.c:157) ==140261== === End of file valgrind1946 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/7/valgrind1945 ./libtest/lib1945 http://hello:35853/1945 127.0.0.1:33971 > log/7/stdout1945 2> log/7/stderr1945 1945: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:28.585128586 +0200 +++ log/7/check-generated 2024-05-23 11:17:28.585128586 +0200 @@ -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/7/ 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 server.cmd Testnum 1945 === End of file server.cmd === Start of file stderr1945 URL: http://hello:35853/1945 === End of file stderr1945 === Start of file valgrind1945 ==140214== ==140214== Process terminating with default action of signal 4 (SIGILL) ==140214== Illegal opcode at address 0x48DC18B ==140214== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140214== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140214== by 0x48DC18B: Curl_open (url.c:519) ==140214== by 0x487CCEF: curl_easy_init (easy.c:368) ==140214== by 0x1090A2: UnknownInlinedFun (lib1945.c:59) ==140214== by 0x1090A2: UnknownInlinedFun (lib1945.c:52) ==140214== by 0x1090A2: main (first.c:178) ==140214== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140214== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140214== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140214== by 0x4A58EC8: tsearch (tsearch.c:290) ==140214== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140214== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140214== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140214== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140214== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140214== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140214== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140214== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140214== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140214== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140214== by 0x497836B: setlocale (setlocale.c:337) ==140214== by 0x10904B: main (first.c:157) ==140214== ==140214== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140214== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140214== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140214== by 0x4A58EC8: tsearch (tsearch.c:290) ==140214== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140214== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140214== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140214== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140214== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140214== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140214== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140214== by 0x497836B: setlocale (setlocale.c:337) ==140214== by 0x10904B: main (first.c:157) ==140214== ==140214== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140214== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140214== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140214== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140214== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140214== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140214== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140214== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140214== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140214== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140214== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140214== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140214== by 0x497836B: setlocale (setlocale.c:337) ==140214== by 0x10904B: main (first.c:157) ==140214== ==140214== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140214== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140214== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140214== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140214== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140214== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140214== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140214== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140214== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140214== by 0x497836B: setlocale (setlocale.c:337) ==140214== by 0x10904B: main (first.c:157) ==140214== ==140214== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140214== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140214== by 0x48DC163: Curl_open (url.c:510) ==140214== by 0x487CCEF: curl_easy_init (easy.c:368) ==140214== by 0x1090A2: UnknownInlinedFun (lib1945.c:59) ==140214== by 0x1090A2: UnknownInlinedFun (lib1945.c:52) ==140214== by 0x1090A2: main (first.c:178) ==140214== ==140214== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140214== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140214== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140214== by 0x4A58EC8: tsearch (tsearch.c:290) ==140214== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140214== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140214== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140214== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140214== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140214== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140214== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140214== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140214== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140214== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140214== by 0x497836B: setlocale (setlocale.c:337) ==140214== by 0x10904B: main (first.c:157) ==140214== ==140214== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140214== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140214== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140214== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140214== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140214== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140214== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140214== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140214== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140214== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140214== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140214== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140214== by 0x497836B: setlocale (setlocale.c:337) ==140214== by 0x10904B: main (first.c:157) ==140214== === End 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/6/valgrind1948 ./libtest/lib1948 http://127.0.0.1:42657/1948 > log/6/stdout1948 2> log/6/stderr1948 CMD (33792): ../libtool --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/valgrind1947 ./libtest/lib1947 http://127.0.0.1:36145/1947 http://127.0.0.1:36145/19470003 > log/10/stdout1947 2> log/10/stderr1947 grind1945 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/6/valgrind1948 ./libtest/lib1948 http://127.0.0.1:42657/1948 > log/6/stdout1948 2> log/6/stderr1948 1948: 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 1948 === Start of file server.cmd Testnum 1948 === End of file server.cmd === Start of file stderr1948 URL: http://127.0.0.1:42657/1948 === End of file stderr1948 === Start of file valgrind1948 ==140301== ==140301== Process terminating with default action of signal 4 (SIGILL) ==140301== Illegal opcode at address 0x48DC18B ==140301== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140301== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140301== by 0x48DC18B: Curl_open (url.c:519) ==140301== by 0x487CCEF: curl_easy_init (easy.c:368) ==140301== by 0x109091: UnknownInlinedFun (lib1948.c:53) ==140301== by 0x109091: main (first.c:178) ==140301== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140301== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140301== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140301== by 0x4A58EC8: tsearch (tsearch.c:290) ==140301== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140301== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140301== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140301== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140301== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140301== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140301== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140301== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140301== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140301== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140301== by 0x497836B: setlocale (setlocale.c:337) ==140301== by 0x109056: main (first.c:157) ==140301== ==140301== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140301== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140301== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140301== by 0x4A58EC8: tsearch (tsearch.c:290) ==140301== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140301== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140301== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140301== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140301== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140301== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140301== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140301== by 0x497836B: setlocale (setlocale.c:337) ==140301== by 0x109056: main (first.c:157) ==140301== ==140301== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140301== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140301== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140301== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140301== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140301== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140301== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140301== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140301== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140301== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140301== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140301== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140301== by 0x497836B: setlocale (setlocale.c:337) ==140301== by 0x109056: main (first.c:157) ==140301== ==140301== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140301== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140301== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140301== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140301== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140301== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140301== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140301== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140301== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140301== by 0x497836B: setlocale (setlocale.c:337) ==140301== by 0x109056: main (first.c:157) ==140301== ==140301== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140301== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140301== by 0x48DC163: Curl_open (url.c:510) ==140301== by 0x487CCEF: curl_easy_init (easy.c:368) ==140301== by 0x109091: UnknownInlinedFun (lib1948.c:53) ==140301== by 0x109091: main (first.c:178) ==140301== ==140301== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140301== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140301== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140301== by 0x4A58EC8: tsearch (tsearch.c:290) ==140301== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140301== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140301== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140301== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140301== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140301== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140301== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140301== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140301== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140301== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140301== by 0x497836B: setlocale (setlocale.c:337) ==140301== by 0x109056: main (first.c:157) ==140301== ==140301== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140301== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140301== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140301== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140301== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140301== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140301== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140301== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140301== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140301== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140301== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140301== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140301== by 0x497836B: setlocale (setlocale.c:337) ==140301== by 0x109056: main (first.c:157) ==140301== === 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/12/valgrind1960 ./libtest/lib1960 http://127.0.0.1:44175/file 127.0.0.1 44175 > log/12/stdout1960 2> log/12/stderr1960 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/10/valgrind1947 ./libtest/lib1947 http://127.0.0.1:36145/1947 http://127.0.0.1:36145/19470003 > log/10/stdout1947 2> log/10/stderr1947 1947: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:28.608462399 +0200 +++ log/10/check-generated 2024-05-23 11:17:28.608462399 +0200 @@ -1,2 +0,0 @@ -count = 2[LF] -count = 1[LF] == Contents of files in the log/10/ dir after test 1947 === Start of file check-expected count = 2[LF] count = 1[LF] === End of file check-expected === Start of file server.cmd Testnum 1947 === End of file server.cmd === Start of file stderr1947 URL: http://127.0.0.1:36145/1947 === End of file stderr1947 === Start of file valgrind1947 ==140299== ==140299== Process terminating with default action of signal 4 (SIGILL) ==140299== Illegal opcode at address 0x48DC18B ==140299== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140299== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140299== by 0x48DC18B: Curl_open (url.c:519) ==140299== by 0x487CCEF: curl_easy_init (easy.c:368) ==140299== by 0x1090A2: UnknownInlinedFun (lib1947.c:46) ==140299== by 0x1090A2: UnknownInlinedFun (lib1947.c:36) ==140299== by 0x1090A2: main (first.c:178) ==140299== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140299== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140299== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140299== by 0x4A58EC8: tsearch (tsearch.c:290) ==140299== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140299== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140299== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140299== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140299== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140299== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140299== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140299== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140299== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140299== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140299== by 0x497836B: setlocale (setlocale.c:337) ==140299== by 0x10904B: main (first.c:157) ==140299== ==140299== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140299== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140299== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140299== by 0x4A58EC8: tsearch (tsearch.c:290) ==140299== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140299== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140299== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140299== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140299== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140299== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140299== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140299== by 0x497836B: setlocale (setlocale.c:337) ==140299== by 0x10904B: main (first.c:157) ==140299== ==140299== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140299== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140299== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140299== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140299== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140299== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140299== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140299== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140299== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140299== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140299== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140299== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140299== by 0x497836B: setlocale (setlocale.c:337) ==140299== by 0x10904B: main (first.c:157) ==140299== ==140299== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140299== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140299== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140299== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140299== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140299== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140299== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140299== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140299== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140299== by 0x497836B: setlocale (setlocale.c:337) ==140299== by 0x10904B: main (first.c:157) ==140299== ==140299== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140299== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140299== by 0x48DC163: Curl_open (url.c:510) ==140299== by 0x487CCEF: curl_easy_init (easy.c:368) ==140299== by 0x1090A2: UnknownInlinedFun (lib1947.c:46) ==140299== by 0x1090A2: UnknownInlinedFun (lib1947.c:36) ==140299== by 0x1090A2: main (first.c:178) ==140299== ==140299== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140299== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140299== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140299== by 0x4A58EC8: tsearch (tsearch.c:290) ==140299== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140299== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140299== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140299== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140299== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140299== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140299== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140299== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140299== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140299== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140299== by 0x497836B: setlocale (setlocale.c:337) ==140299== by 0x10904B: main (first.c:157) ==140299== ==140299== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140299== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140299== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140299== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140299== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140299== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140299== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140299== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140299== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140299== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140299== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140299== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140299== by 0x497836B: setlocale (setlocale.c:337) ==140299== by 0x10904B: main (first.c:157) ==140299== === End of file valgrind1947 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost prechecked ./libtest/lib1960 check test 1960...[application hands over already connected 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/12/valgrind1960 ./libtest/lib1960 http://127.0.0.1:44175/file 127.0.0.1 44175 > log/12/stdout1960 2> log/CMD (0): ./libtest/lib1592 http://a-site-never-accessed.example.org/1592 > log/9/stdout1592 2> log/9/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/1/valgrind2001 ../src/curl -q --trace-ascii log/1/trace2001 --trace-time http://127.0.0.1:39283/20010001 ftp://127.0.0.1:33169/20010002 file://localhost/startdir/src/build-curl/tests/log/1/test2001.txt > log/1/stdout2001 2> log/1/stderr2001 CMD (33792): ../libtool --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/valgrind2000 ../src/curl -q --trace-ascii log/11/trace2000 --trace-time ftp://127.0.0.1:33323/2000 file://localhost/startdir/src/build-curl/tests/log/11/test2000.txt > log/11/stdout2000 2> log/11/stderr2000 12/stderr1960 1960: 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 1960 === Start of file http_server.log 11:17:28.104766 ====> Client connect 11:17:28.104799 accept_connection 3 returned 4 11:17:28.104811 accept_connection 3 returned 0 11:17:28.160026 Connection closed by client 11:17:28.160052 ====> Client disconnect 0 === End of file http_server.log === Start of file precheck-1960 URL: check Test ended with result 0 === End of file precheck-1960 === Start of file server.cmd Testnum 1960 === End of file server.cmd === Start of file stderr1960 URL: http://127.0.0.1:44175/file === End of file stderr1960 === Start of file valgrind1960 ==140401== ==140401== Process terminating with default action of signal 4 (SIGILL) ==140401== Illegal opcode at address 0x48DC18B ==140401== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140401== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140401== by 0x48DC18B: Curl_open (url.c:519) ==140401== by 0x487CCEF: curl_easy_init (easy.c:368) ==140401== by 0x109191: UnknownInlinedFun (lib1960.c:115) ==140401== by 0x109191: main (first.c:178) ==140401== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140401== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140401== by 0x4A58EC8: tsearch (tsearch.c:290) ==140401== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140401== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140401== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140401== by 0x497836B: setlocale (setlocale.c:337) ==140401== by 0x109056: main (first.c:157) ==140401== ==140401== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140401== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140401== by 0x4A58EC8: tsearch (tsearch.c:290) ==140401== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140401== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140401== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140401== by 0x497836B: setlocale (setlocale.c:337) ==140401== by 0x109056: main (first.c:157) ==140401== ==140401== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140401== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140401== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140401== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140401== by 0x497836B: setlocale (setlocale.c:337) ==140401== by 0x109056: main (first.c:157) ==140401== ==140401== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140401== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140401== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140401== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140401== by 0x497836B: setlocale (setlocale.c:337) ==140401== by 0x109056: main (first.c:157) ==140401== ==140401== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140401== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140401== by 0x48DC163: Curl_open (url.c:510) ==140401== by 0x487CCEF: curl_easy_init (easy.c:368) ==140401== by 0x109191: UnknownInlinedFun (lib1960.c:115) ==140401== by 0x109191: main (first.c:178) ==140401== ==140401== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140401== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140401== by 0x4A58EC8: tsearch (tsearch.c:290) ==140401== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140401== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140401== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140401== by 0x497836B: setlocale (setlocale.c:337) ==140401== by 0x109056: main (first.c:157) ==140401== ==140401== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140401== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140401== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140401== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140401== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140401== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140401== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140401== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140401== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140401== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140401== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140401== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140401== by 0x497836B: setlocale (setlocale.c:337) ==140401== by 0x109056: main (first.c:157) ==140401== === End of file valgrind1960 setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost setenv CURL_GETHOSTNAME = curlhost setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libhostname.so prechecked ./libtest/chkhostname curlhost * starts no server test 1592...[HTTP request, remove handle while resolving, don't block] ./libtest/lib1592 http://a-site-never-accessed.example.org/1592 > log/9/stdout1592 2> log/9/stderr1592 valgrind SKIPPED -------e--- OK (1345 out of 1513, remaining: 00:13, took 5.048s, duration: 01:47) Warning: test1592 result is ignored, but passed! CMD (33792): ../libtool --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/valgrind1964 ./libtest/lib1964 http://xxx:yyy@127.0.0.1:9000/1964/testapi/test 127.0.0.1:9000:127.0.0.1:41947 > log/4/stdout1964 2> log/4/stderr1964 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/1/valgrind2001 ../src/curl -q --trace-ascii log/1/trace2001 --trace-time http://127.0.0.1:39283/20010001 ftp://127.0.0.1:33169/20010002 file://localhost/startdir/src/build-curl/tests/log/1/test2001.txt > log/1/stdout2001 2> log/1/stderr2001 2001: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:28.831800321 +0200 +++ log/1/check-generated 2024-05-23 11:17:28.831800321 +0200 @@ -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/1/ 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 server.cmd Testnum 2001 === End of file server.cmd === Start of file test2001.txt foo bar bar foo moo === End of file test2001.txt === Start of file valgrind2001 ==140545== ==140545== Process terminating with default action of signal 4 (SIGILL) ==140545== Illegal opcode at address 0x10B06D ==140545== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==140545== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2001 test 1964...[HTTP AWS_SIGV4 with one provider and auth cred via URL, but 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/4/valgrind1964 ./libtest/lib1964 http://xxx:yyy@127.0.0.1:9000/1964/testapi/test 127.0.0.1:9000:127.0.0.1:41947 > log/4/stdout1964 2> log/4/stderr1964 1964: 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 1964 === Start of file server.cmd Testnum 1964 === End of file server.cmd === Start of file stderr1964 URL: http://xxx:yyy@127.0.0.1:9000/1964/testapi/test === End of file stderr1964 === Start of file valgrind1964 ==140474== ==140474== Process terminating with default action of signal 4 (SIGILL) ==140474== Illegal opcode at address 0x48DC18B ==140474== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140474== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140474== by 0x48DC18B: Curl_open (url.c:519) ==140474== by 0x487CCEF: curl_easy_init (easy.c:368) ==140474== by 0x1090A2: UnknownInlinedFun (lib1964.c:36) ==140474== by 0x1090A2: UnknownInlinedFun (lib1964.c:28) ==140474== by 0x1090A2: main (first.c:178) ==140474== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140474== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140474== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140474== by 0x4A58EC8: tsearch (tsearch.c:290) ==140474== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140474== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140474== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140474== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140474== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140474== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140474== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140474== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140474== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140474== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140474== by 0x497836B: setlocale (setlocale.c:337) ==140474== by 0x10904B: main (first.c:157) ==140474== ==140474== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140474== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140474== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140474== by 0x4A58EC8: tsearch (tsearch.c:290) ==140474== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140474== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140474== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140474== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140474== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140474== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140474== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140474== by 0x497836B: setlocale (setlocale.c:337) ==140474== by 0x10904B: main (first.c:157) ==140474== ==140474== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140474== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140474== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140474== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140474== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140474== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140474== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140474== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140474== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140474== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140474== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140474== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140474== by 0x497836B: setlocale (setlocale.c:337) ==140474== by 0x10904B: main (first.c:157) ==140474== ==140474== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140474== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140474== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140474== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140474== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140474== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140474== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140474== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140474== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140474== by 0x497836B: setlocale (setlocale.c:337) ==140474== by 0x10904B: main (first.c:157) ==140474== ==140474== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140474== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140474== by 0x48DC163: Curl_open (url.c:510) ==140474== by 0x487CCEF: curl_easy_init (easy.c:368) ==140474== by 0x1090A2: UnknownInlinedFun (lib1964.c:36) ==140474== by 0x1090A2: UnknownInlinedFun (lib1964.c:28) ==140474== by 0x1090A2: main (first.c:178) ==140474== ==140474== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140474== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140474== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140474== by 0x4A58EC8: tsearch (tsearch.c:290) ==140474== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140474== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140474== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140474== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140474== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140474== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140474== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140474== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140474== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140474== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140474== by 0x497836B: setlocale (setlocale.c:337) ==140474== by 0x10904B: main (first.c:157) ==140474== ==140474== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140474== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140474== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140474== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140474== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140474== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140474== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140474== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140474== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140474== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140474== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140474== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140474== by 0x497836B: setlocale (setlocale.c:337) ==140474== by 0x10904B: main (first.c:157) ==140474== === End of file valgrind1964 CMD (33792): ../libtool --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/valgrind2002 ../src/curl -q --trace-ascii log/3/trace2002 --trace-time http://127.0.0.1:46715/20020001 ftp://127.0.0.1:45493/20020002 file://localhost/startdir/src/build-curl/tests/log/3/test2002.txt tftp://127.0.0.1:35271//20020003 > log/3/stdout2002 2> log/3/stderr2002 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/11/valgrind2000 ../src/curl -q --trace-ascii log/11/trace2000 --trace-time ftp://127.0.0.1:33323/2000 file://localhost/startdir/src/build-curl/tests/log/11/test2000.txt > log/11/stdout2000 2> log/11/stderr2000 2000: stdout FAILED: --- log/11/check-expected 2024-05-23 11:17:28.838467124 +0200 +++ log/11/check-generated 2024-05-23 11:17:28.838467124 +0200 @@ -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/11/ 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 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 ==140537== ==140537== Process terminating with default action of signal 4 (SIGILL) ==140537== Illegal opcode at address 0x10B06D ==140537== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==140537== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2000 CMD (33792): ../libtool --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/valgrind2036 ../src/curl -q --include --trace-ascii log/11/trace2036 --trace-time 127.0.0.1:47 -O > log/11/stdout2036 2> log/11/stderr2036 CMD (33792): ../libtool --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/valgrind2025 ./libtest/libauthretry http://127.0.0.1:42657/2025 basic ntlm > log/6/stdout2025 2> log/6/stderr2025 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/3/valgrind2002 ../src/curl -q --trace-ascii log/3/trace2002 --trace-time http://127.0.0.1:46715/20020001 ftp://127.0.0.1:45493/20020002 file://localhost/startdir/src/build-curl/tests/log/3/test2002.txt tftp://127.0.0.1:35271//20020003 > log/3/stdout2002 2> log/3/stderr2002 2002: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:29.045138036 +0200 +++ log/3/check-generated 2024-05-23 11:17:29.045138036 +0200 @@ -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/3/ 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 server.cmd Testnum 2002 === End of file server.cmd === Start of file test2002.txt foo bar bar foo moo === End of file test2002.txt === Start of file valgrind2002 ==140646== ==140646== Process terminating with default action of signal 4 (SIGILL) ==140646== Illegal opcode at address 0x10B06D ==140646== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==140646== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2002 * starts no server test 2036...[HTTP, -O with no slash at all 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/11/valgrind2036 ../src/curl -q --include --trace-ascii log/11/trace2036 --trace-time 127.0.0.1:47 -O > log/11/stdout2036 2> log/11/stderr2036 curl returned 132, when expecting 23 2036: exit FAILED == Contents of files in the log/11/ dir after test 2036 === Start of file server.cmd Testnum 2036 === End of file server.cmd === Start of file valgrind2036 ==140904== ==140904== Process terminating with default action of signal 4 (SIGILL) ==140904== Illegal opcode at address 0x10B06D ==140904== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==140904== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2036 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/6/valgrind2025 ./libtest/libauthretry http://127.0.0.1:42657/2025 basic ntlm > log/6/stdout2025 2> log/6/stderr2025 2025: 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 2025 === Start of file server.cmd Testnum 2025 === End of file server.cmd === Start of file stderr2025 URL: http://127.0.0.1:42657/2025 === End of file stderr2025 === Start of file valgrind2025 ==140701== ==140701== Process terminating with default action of signal 4 (SIGILL) ==140701== Illegal opcode at address 0x48DC18B ==140701== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140701== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140701== by 0x48DC18B: Curl_open (url.c:519) ==140701== by 0x487CCEF: curl_easy_init (easy.c:368) ==140701== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140701== by 0x1090E0: main (first.c:178) ==140701== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140701== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140701== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140701== by 0x4A58EC8: tsearch (tsearch.c:290) ==140701== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140701== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140701== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140701== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140701== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140701== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140701== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140701== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140701== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140701== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140701== by 0x497836B: setlocale (setlocale.c:337) ==140701== by 0x10904B: main (first.c:157) ==140701== ==140701== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140701== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140701== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140701== by 0x4A58EC8: tsearch (tsearch.c:290) ==140701== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140701== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140701== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140701== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140701== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140701== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140701== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140701== by 0x497836B: setlocale (setlocale.c:337) ==140701== by 0x10904B: main (first.c:157) ==140701== ==140701== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140701== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140701== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140701== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140701== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140701== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140701== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140701== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140701== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140701== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140701== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140701== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140701== by 0x497836B: setlocale (setlocale.c:337) ==140701== by 0x10904B: main (first.c:157) ==140701== ==140701== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140701== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140701== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140701== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140701== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140701== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140701== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140701== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140701== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140701== by 0x497836B: setlocale (setlocale.c:337) ==140701== by 0x10904B: main (first.c:157) ==140701== ==140701== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140701== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140701== by 0x48DC163: Curl_open (url.c:510) ==140701== by 0x487CCEF: curl_easy_init (easy.c:368) ==140701== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140701== by 0x1090E0: main (first.c:178) ==140701== ==140701== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140701== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140701== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140701== by 0x4A58EC8: tsearch (tsearch.c:290) ==140701== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140701== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140701== by 0x496C9A2: add_alias (gconv_conf.c:178) =CMD (33792): ../libtool --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/valgrind2029 ./libtest/libauthretry http://127.0.0.1:44175/2029 ntlm basic > log/12/stdout2029 2> log/12/stderr2029 =140701== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140701== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140701== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140701== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140701== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140701== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140701== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140701== by 0x497836B: setlocale (setlocale.c:337) ==140701== by 0x10904B: main (first.c:157) ==140701== ==140701== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140701== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140701== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140701== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140701== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140701== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140701== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140701== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140701== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140701== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140701== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140701== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140701== by 0x497836B: setlocale (setlocale.c:337) ==140701== by 0x10904B: main (first.c:157) ==140701== === End of file valgrind2025 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/12/valgrind2029 ./libtest/libauthretry http://127.0.0.1:44175/2029 ntlm basic > log/12/stdout2029 2> log/12/stderr2029 2029: 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 2029 === Start of file server.cmd Testnum 2029 === End of file server.cmd === Start of file stderr2029 URL: http://127.0.0.1:44175/2029 === End of file stderr2029 === Start of file valgrind2029 ==140782== ==140782== Process terminating with default action of signal 4 (SIGILL) ==140782== Illegal opcode at address 0x48DC18B ==140782== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140782== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140782== by 0x48DC18B: Curl_open (url.c:519) ==140782== by 0x487CCEF: curl_easy_init (easy.c:368) ==140782== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140782== by 0x1090E0: main (first.c:178) ==140782== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140782== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140782== by 0x4A58EC8: tsearch (tsearch.c:290) ==140782== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140782== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140782== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140782== by 0x497836B: setlocale (setlocale.c:337) ==140782== by 0x10904B: main (first.c:157) ==140782== ==140782== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140782== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140782== by 0x4A58EC8: tsearch (tsearch.c:290) ==140782== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140782== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140782== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140782== by 0x497836B: setlocale (setlocale.c:337) ==140782== by 0x10904B: main (first.c:157) ==140782== ==140782== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140782== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140782== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140782== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140782== by 0x497836B: setlocale (setlocale.c:337) ==140782== by 0x10904B: main (first.c:157) ==140782== ==140782== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140782== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140782== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140782== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140782== by 0x497836B: setlocale (setlocale.c:337) ==140782== by 0x10904B: main (first.c:157) ==140782== ==140782== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140782== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140782== by 0x48DC163: Curl_open (url.c:510) ==140782== by 0x487CCEF: curl_easy_init (easy.c:368) ==140782== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140782== by 0x1090E0: main (first.c:178) ==140782== ==140782== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140782== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140782== by 0x4A58EC8: tsearch (tsearch.c:290) ==140782== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140782== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140782== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140782== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140782== by 0x497836B: setlocale (setlocale.c:337) ==140782== by 0x10904B: main (first.c:157) ==140782== ==140782== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140782== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140782== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140782== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140782== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140782== by 0x496C9A2: 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/10/valgrind2028 ./libtest/libauthretry http://127.0.0.1:36145/2028 digest ntlm > log/10/stdout2028 2> log/10/stderr2028 CMD (33792): ../libtool --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/valgrind2030 ./libtest/libauthretry http://127.0.0.1:40247/2030 ntlm digest > log/9/stdout2030 2> log/9/stderr2030 CMD (33792): ../libtool --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/valgrind2039 ../src/curl -q --output log/3/curl2039.out --include --trace-ascii log/3/trace2039 --trace-time --netrc-optional --netrc-file log/3/netrc2039 ftp://127.0.0.1:45493/ > log/3/stdout2039 2> log/3/stderr2039 d_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140782== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140782== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140782== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140782== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140782== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140782== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140782== by 0x497836B: setlocale (setlocale.c:337) ==140782== by 0x10904B: main (first.c:157) ==140782== === End of file valgrind2029 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/10/valgrind2028 ./libtest/libauthretry http://127.0.0.1:36145/2028 digest ntlm > log/10/stdout2028 2> log/10/stderr2028 2028: 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 2028 === Start of file server.cmd Testnum 2028 === End of file server.cmd === Start of file stderr2028 URL: http://127.0.0.1:36145/2028 === End of file stderr2028 === Start of file valgrind2028 ==140752== ==140752== Process terminating with default action of signal 4 (SIGILL) ==140752== Illegal opcode at address 0x48DC18B ==140752== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140752== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140752== by 0x48DC18B: Curl_open (url.c:519) ==140752== by 0x487CCEF: curl_easy_init (easy.c:368) ==140752== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140752== by 0x1090E0: main (first.c:178) ==140752== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140752== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140752== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140752== by 0x4A58EC8: tsearch (tsearch.c:290) ==140752== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140752== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140752== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140752== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140752== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140752== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140752== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140752== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140752== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140752== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140752== by 0x497836B: setlocale (setlocale.c:337) ==140752== by 0x10904B: main (first.c:157) ==140752== ==140752== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140752== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140752== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140752== by 0x4A58EC8: tsearch (tsearch.c:290) ==140752== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140752== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140752== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140752== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140752== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140752== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140752== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140752== by 0x497836B: setlocale (setlocale.c:337) ==140752== by 0x10904B: main (first.c:157) ==140752== ==140752== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140752== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140752== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140752== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140752== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140752== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140752== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140752== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140752== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140752== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140752== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140752== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140752== by 0x497836B: setlocale (setlocale.c:337) ==140752== by 0x10904B: main (first.c:157) ==140752== ==140752== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140752== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140752== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140752== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140752== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140752== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140752== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140752== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140752== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140752== by 0x497836B: setlocale (setlocale.c:337) ==140752== by 0x10904B: main (first.c:157) ==140752== ==140752== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140752== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140752== by 0x48DC163: Curl_open (url.c:510) ==140752== by 0x487CCEF: curl_easy_init (easy.c:368) ==140752== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140752== by 0x1090E0: main (first.c:178) ==140752== ==140752== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140752== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140752== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140752== by 0x4A58EC8: tsearch (tsearch.c:290) ==140752== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140752== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140752== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140752== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140752== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140752== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140752== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140752== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140752== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140752== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140752== by 0x497836B: setlocale (setlocale.c:337) ==140752== by 0x10904B: main (first.c:157) ==140752== ==140752== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140752== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140752== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140752== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140752== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140752== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140752== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140752== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140752== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140752== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140752== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140752== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140752== by 0x497836B: setlocale (setlocale.c:337) ==140752== by 0x10904B: main (first.c:157) ==140752== === End of file valgrind2028 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/9/valgrind2030 ./libtest/libauthretry http://127.0.0.1:40247/2030 ntlm digest > log/9/stdout2030 2> log/9/stderr2030 203CMD (33792): ../libtool --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/valgrind2032 ./libtest/libntlmconnect http://127.0.0.1:41947/2032 > log/4/stdout2032 2> log/4/stderr2032 0: 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 2030 === Start of file server.cmd Testnum 2030 === End of file server.cmd === Start of file stderr2030 URL: http://127.0.0.1:40247/2030 === End of file stderr2030 === Start of file valgrind2030 ==140848== ==140848== Process terminating with default action of signal 4 (SIGILL) ==140848== Illegal opcode at address 0x48DC18B ==140848== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140848== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140848== by 0x48DC18B: Curl_open (url.c:519) ==140848== by 0x487CCEF: curl_easy_init (easy.c:368) ==140848== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140848== by 0x1090E0: main (first.c:178) ==140848== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140848== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140848== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140848== by 0x4A58EC8: tsearch (tsearch.c:290) ==140848== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140848== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140848== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140848== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140848== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140848== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140848== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140848== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140848== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140848== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140848== by 0x497836B: setlocale (setlocale.c:337) ==140848== by 0x10904B: main (first.c:157) ==140848== ==140848== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140848== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140848== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140848== by 0x4A58EC8: tsearch (tsearch.c:290) ==140848== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140848== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140848== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140848== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140848== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140848== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140848== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140848== by 0x497836B: setlocale (setlocale.c:337) ==140848== by 0x10904B: main (first.c:157) ==140848== ==140848== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140848== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140848== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140848== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140848== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140848== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140848== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140848== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140848== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140848== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140848== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140848== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140848== by 0x497836B: setlocale (setlocale.c:337) ==140848== by 0x10904B: main (first.c:157) ==140848== ==140848== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140848== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140848== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140848== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140848== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140848== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140848== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140848== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140848== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140848== by 0x497836B: setlocale (setlocale.c:337) ==140848== by 0x10904B: main (first.c:157) ==140848== ==140848== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140848== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140848== by 0x48DC163: Curl_open (url.c:510) ==140848== by 0x487CCEF: curl_easy_init (easy.c:368) ==140848== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140848== by 0x1090E0: main (first.c:178) ==140848== ==140848== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140848== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140848== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140848== by 0x4A58EC8: tsearch (tsearch.c:290) ==140848== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140848== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140848== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140848== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140848== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140848== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140848== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140848== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140848== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140848== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140848== by 0x497836B: setlocale (setlocale.c:337) ==140848== by 0x10904B: main (first.c:157) ==140848== ==140848== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140848== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140848== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140848== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140848== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140848== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140848== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140848== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140848== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140848== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140848== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140848== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140848== by 0x497836B: setlocale (setlocale.c:337) ==140848== by 0x10904B: main (first.c:157) ==140848== === End of file valgrind2030 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/3/valgrind2039 ../src/curl -q --output log/3/curl2039.out --include --trace-ascii log/3/trace2039 --trace-time --netrc-optional --netrc-file log/3/netrc2039 ftp://127.0.0.1:45493/ > log/3/stdout2039 2> log/3/stderr2039 2039: 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 2039 === 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 ==141047== ==141047== Process terminating with default action of signal 4 (SIGILL) ==141047== Illegal opcode at address 0x10B06D ==141047== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141047== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2039 test 2032...[NTLM connection mappiCMD (33792): ../libtool --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/valgrind2031 ./libtest/libauthretry http://127.0.0.1:39283/2031 ntlm ntlm > log/1/stdout2031 2> log/1/stderr2031 ng] ../libtool --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/valgrind2032 ./libtest/libntlmconnect http://127.0.0.1:41947/2032 > log/4/stdout2032 2> log/4/stderr2032 2032: 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 2032 === Start of file server.cmd Testnum 2032 === End of file server.cmd === Start of file stderr2032 URL: http://127.0.0.1:41947/2032 === End of file stderr2032 === Start of file valgrind2032 ==140903== ==140903== Process terminating with default action of signal 4 (SIGILL) ==140903== Illegal opcode at address 0x48DC18B ==140903== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140903== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140903== by 0x48DC18B: Curl_open (url.c:519) ==140903== by 0x487CCEF: curl_easy_init (easy.c:368) ==140903== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==140903== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==140903== by 0x10948F: test (libntlmconnect.c:120) ==140903== by 0x109076: main (first.c:178) ==140903== 408 bytes in 17 blocks are possibly lost in loss record 601 of 652 ==140903== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140903== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140903== by 0x4A58EC8: tsearch (tsearch.c:290) ==140903== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140903== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140903== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140903== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140903== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140903== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140903== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140903== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140903== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140903== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140903== by 0x497836B: setlocale (setlocale.c:337) ==140903== by 0x109047: main (first.c:157) ==140903== ==140903== 552 bytes in 23 blocks are possibly lost in loss record 607 of 652 ==140903== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140903== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140903== by 0x4A58EC8: tsearch (tsearch.c:290) ==140903== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140903== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140903== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140903== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140903== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140903== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140903== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140903== by 0x497836B: setlocale (setlocale.c:337) ==140903== by 0x109047: main (first.c:157) ==140903== ==140903== 681 bytes in 17 blocks are possibly lost in loss record 613 of 652 ==140903== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140903== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140903== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140903== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140903== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140903== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140903== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140903== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140903== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140903== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140903== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140903== by 0x497836B: setlocale (setlocale.c:337) ==140903== by 0x109047: main (first.c:157) ==140903== ==140903== 1,018 bytes in 23 blocks are possibly lost in loss record 627 of 652 ==140903== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140903== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140903== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140903== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140903== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140903== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140903== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140903== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140903== by 0x497836B: setlocale (setlocale.c:337) ==140903== by 0x109047: main (first.c:157) ==140903== ==140903== 5,288 bytes in 1 blocks are definitely lost in loss record 646 of 652 ==140903== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140903== by 0x48DC163: Curl_open (url.c:510) ==140903== by 0x487CCEF: curl_easy_init (easy.c:368) ==140903== by 0x48B84E4: UnknownInlinedFun (conncache.c:106) ==140903== by 0x48B84E4: Curl_multi_handle (multi.c:399) ==140903== by 0x10948F: test (libntlmconnect.c:120) ==140903== by 0x109076: main (first.c:178) ==140903== ==140903== 11,664 bytes in 486 blocks are possibly lost in loss record 649 of 652 ==140903== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140903== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140903== by 0x4A58EC8: tsearch (tsearch.c:290) ==140903== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140903== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140903== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140903== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140903== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140903== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140903== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140903== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140903== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140903== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140903== by 0x497836B: setlocale (setlocale.c:337) ==140903== by 0x109047: main (first.c:157) ==140903== ==140903== 18,800 bytes in 486 blocks are possibly lost in loss record 651 of 652 ==140903== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140903== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140903== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140903== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140903== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140903== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140903== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140903== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140903== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140903== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140903== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140903== by 0x497836B: setlocale (setlocale.c:337) ==140903== by 0x109047: main (first.c:157) ==140903== === End of file valgrind2032 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/1/valgrind2031 ./libtest/libauthretry http://127.0.0.1:39283/2031 ntlm ntlm > log/1/stdout2031 2> log/1/stderr2031 2031: 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 2031 === Start of file server.cmd Testnum 2031 === End of file server.cmd === Start of file stderr2031 URL: http://127.0.0.1:39283/2031 === End of file stderr2031 === Start of file valgrind2031 ==140935== ==140935== Process terminating with default action of signal 4 (SIGILL) ==140935== Illegal opCMD (33792): ../libtool --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/valgrind2040 ../src/curl -q --trace-ascii log/11/trace2040 --trace-time -u testuser:testpass http://127.0.0.1:39499/20400100 --next --no-basic http://127.0.0.1:39499/20400200 > log/11/stdout2040 2> log/11/stderr2040 code at address 0x48DC18B ==140935== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==140935== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==140935== by 0x48DC18B: Curl_open (url.c:519) ==140935== by 0x487CCEF: curl_easy_init (easy.c:368) ==140935== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140935== by 0x1090E0: main (first.c:178) ==140935== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==140935== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140935== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140935== by 0x4A58EC8: tsearch (tsearch.c:290) ==140935== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140935== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140935== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140935== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140935== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140935== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140935== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140935== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140935== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140935== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140935== by 0x497836B: setlocale (setlocale.c:337) ==140935== by 0x10904B: main (first.c:157) ==140935== ==140935== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==140935== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140935== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140935== by 0x4A58EC8: tsearch (tsearch.c:290) ==140935== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140935== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140935== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140935== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140935== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140935== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140935== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140935== by 0x497836B: setlocale (setlocale.c:337) ==140935== by 0x10904B: main (first.c:157) ==140935== ==140935== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==140935== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140935== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140935== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140935== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140935== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140935== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==140935== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==140935== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140935== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140935== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140935== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140935== by 0x497836B: setlocale (setlocale.c:337) ==140935== by 0x10904B: main (first.c:157) ==140935== ==140935== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==140935== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140935== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140935== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==140935== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==140935== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140935== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140935== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140935== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140935== by 0x497836B: setlocale (setlocale.c:337) ==140935== by 0x10904B: main (first.c:157) ==140935== ==140935== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==140935== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==140935== by 0x48DC163: Curl_open (url.c:510) ==140935== by 0x487CCEF: curl_easy_init (easy.c:368) ==140935== by 0x1090E0: UnknownInlinedFun (libauthretry.c:106) ==140935== by 0x1090E0: main (first.c:178) ==140935== ==140935== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==140935== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140935== by 0x4A58EC8: __tsearch (tsearch.c:337) ==140935== by 0x4A58EC8: tsearch (tsearch.c:290) ==140935== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==140935== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140935== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140935== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140935== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140935== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140935== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140935== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140935== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140935== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140935== by 0x497836B: setlocale (setlocale.c:337) ==140935== by 0x10904B: main (first.c:157) ==140935== ==140935== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==140935== at 0x4842788: malloc (vg_replace_malloc.c:446) ==140935== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==140935== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==140935== by 0x496C9A2: add_alias (gconv_conf.c:178) ==140935== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==140935== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==140935== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==140935== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==140935== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==140935== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==140935== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==140935== by 0x497836B: setlocale (setlocale.c:337) ==140935== by 0x10904B: main (first.c:157) ==140935== === 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/6/valgrind2044 ../src/curl -q --output log/6/curl2044.out --include --trace-ascii log/6/trace2044 --trace-time --proto-default DOESNOTEXIST > log/6/stdout2044 2> log/6/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/10/valgrind2046 ../src/curl -q --include --trace-ascii log/10/trace2046 --trace-time http://åäö.se:36145/2046 --resolve xn--4cab6c.se:36145: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/10/stdout2046 2> log/10/stderr2046 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/11/valgrind2040 ../src/curl -q --trace-ascii log/11/trace2040 --trace-time -u testuser:testpass http://127.0.0.1:39499/20400100 --next --no-basic http://127.0.0.1:39499/20400200 > log/11/stdout2040 2> log/11/stderr2040 2040: stdout FAILED: --- log/11/check-expected 2024-05-23 11:17:29.895155499 +0200 +++ log/11/check-generated 2024-05-23 11:17:29.895155499 +0200 @@ -1,2 +0,0 @@ -Finally, this is the real page![LF] -This is a bad password page![LF] == Contents of files in the log/11/ 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 server.cmd Testnum 2040 === End of file server.cmd === Start of file valgrind2040 ==141114== ==141114== Process terminating with default action of signal 4 (SIGILL) ==141114== Illegal opcode at address 0x10B06D ==141114== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141114== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2040 * 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/6/valgrind2044 ../src/curl -q --output log/6/curl2044.out --include --trace-ascii log/6/trace2044 --trace-time --proto-default DOESNOTEXIST > log/6/stdout2044 2> log/6/stderr2044 curl returned 132, when expecting 1 2044: exit FAILED == Contents of files in the log/6/ dir after test 2044 === Start of file server.cmd Testnum 2044 === End of file server.cmd === Start of file valgrind2044 ==141161== ==141161== Process terminating with default action of signal 4 (SIGILL) ==141161== Illegal opcode at address 0x10B06D ==141161== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141161== by 0x10B06D: 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/12/valgrind2045 ../src/curl -q --output log/12/curl2045.out --include --trace-ascii log/12/trace2045 --trace-time -H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp 127.0.0.1:41005 > log/12/stdout2045 2> log/12/stderr2045 CMD (33792): ../libtool --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/valgrind2047 ../src/curl -q --include --trace-ascii log/9/trace2047 --trace-time http://åäö.se/2047 -x 127.0.0.1:40247 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/9/stdout2047 2> log/9/stderr2047 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/10/valgrind2046 ../src/curl -q --include --trace-ascii log/10/trace2046 --trace-time http://åäö.se:36145/2046 --resolve xn--4cab6c.se:36145: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/10/stdout2046 2> log/10/stderr2046 2046: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:30.048491982 +0200 +++ log/10/check-generated 2024-05-23 11:17:30.048491982 +0200 @@ -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:36145/20460001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/10/ 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:36145/20460001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file server.cmd Testnum 2046 === End of file server.cmd === Start of file valgrind2046 ==141252== ==141252== Process terminating with default action of signal 4 (SIGILL) ==141252== Illegal opcode at address 0x10B06D ==141252== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141252== by 0x10B06D: 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/12/valgrind2045 ../src/curl -q --output log/12/curl2045.out --include --trace-ascii log/12/trace2045 --trace-time -H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp 127.0.0.1:41005 > log/12/stdout2045 2> log/12/stderr2045 curl returned 132, when expecting 8 2045: exit FAILED == Contents of files in the log/12/ dir after test 2045 === 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 ==141210== ==141210== Process terminating with default action of signal 4 (SIGILL) ==141210== Illegal opcode at address 0x10B06D ==141210== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141210== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2045 CMD (33792): ../libtool --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/valgrind2049 ../src/curl -q --output log/3/curl2049.out --include --trace-ascii log/3/trace2049 --trace-time http://www1.example.com:8081/2049 --connect-to ::127.0.0.1:46715 --next http://www2.example.com:8082/2049 --connect-to :8082:127.0.0.1:46715 --next http://www3.example.com:8083/2049 --connect-to www3.example.com::127.0.0.1:46715 --next http://www4.example.com:8084/2049 --connect-to www4.example.com:8084:127.0.0.1:46715 > log/3/stdout2049 2> log/3/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/7/valgrind2003 ../src/curl -q --trace-ascii log/7/trace2003 --trace-time http://127.0.0.1:35853/20030001 ftp://127.0.0.1:45903/20030002 file://localhost/startdir/src/build-curl/tests/log/7/test2003.txt tftp://127.0.0.1:39697//20030003 tftp://127.0.0.1:39697//20030003 file://localhost/startdir/src/build-curl/tests/log/7/test2003.txt ftp://127.0.0.1:45903/20030002 http://127.0.0.1:35853/20030001 > log/7/stdout2003 2> log/7/stderr2003 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 prechecked /usr/bin/perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "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/9/valgrind2047 ../src/curl -q --include --trace-ascii log/9/trace2047 --trace-time http://åäö.se/2047 -x 127.0.0.1:40247 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/9/stdout2047 2> log/9/stderr2047 2047: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:30.085159402 +0200 +++ log/9/check-generated 2024-05-23 11:17:30.085159402 +0200 @@ -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/9/ 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 server.cmd Testnum 2047 === End of file server.cmd === Start of file valgrind2047 ==141334== ==141334== Process terminating with default action of signal 4 (SIGILL) ==141334== Illegal opcode at address 0x10B06D ==141334== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141334== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2047 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/3/valgrind2049 ../src/curl -q --output log/3/curl2049.out --include --trace-ascii log/3/trace2049 --trace-time http://www1.example.com:8081/2049 --connect-to ::127.0.0.1:46715 --next http://www2.example.com:8082/2049 --connect-to :8082:127.0.0.1:46715 --next http://www3.example.com:8083/2049 --connect-to www3.example.com::127.0.0.1:46715 --next http://www4.example.com:8084/2049 --connect-to www4.example.com:8084:127.0.0.1:46715 > log/3/stdout2049 2> log/3/stderr2049 2049: 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 2049 === Start of file server.cmd Testnum 2049 === End of file server.cmd === Start of file valgrind2049 ==141314== ==141314== Process terminating with default action of signal 4 (SIGILL) ==141314== Illegal opcode at address 0x10B06D ==141314== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141314== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2049 CMD (33792): ../libtool --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/valgrind2050 ../src/curl -q --output log/4/curl2050.out --include --trace-ascii log/4/trace2050 --trace-time http://www.example.com.2050/2050 --connect-to ::connect.example.com.2050:41947 -x 127.0.0.1:34455 > log/4/stdout2050 2> log/4/stderr2050 CMD (33792): ../libtool --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/valgrind2051 ../src/curl -q --include --trace-ascii log/1/trace2051 --trace-time http://127.0.0.1:39283/2051 -w "%{num_connects}\n" --next --connect-to ::127.0.0.1:39283 http://127.0.0.1:39283/2051 -w "%{num_connects}\n" --next http://127.0.0.1:39283/2051 -w "%{num_connects}\n" > log/1/stdout2051 2> log/1/stderr2051 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/7/server/tftp_server.pid" --portfile "log/7/server/tftp_server.port" --logfile "log/7/tftp_server.log" --logdir "log/7" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --silent --verbose --globoff "tftp://127.0.0.1:39697/verifiedserver" 2>log/7/tftp_verify.log RUN: Verifying our test tftp server took 0 seconds RUN: TFTP server on PID 140644 port 39697 * pid tftp => 140644 140644 test 2003...[HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ then again in reverse 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/7/valgrind2003 ../src/curl -q --trace-ascii log/7/trace2003 --trace-time http://127.0.0.1:35853/20030001 ftp://127.0.0.1:45903/20030002 file://localhost/startdir/src/build-curl/tests/log/7/test2003.txt tftp://127.0.0.1:39697//20030003 tftp://127.0.0.1:39697//20030003 file://localhost/startdir/src/build-curl/tests/log/7/test2003.txt ftp://127.0.0.1:45903/20030002 http://127.0.0.1:35853/20030001 > log/7/stdout2003 2> log/7/stderr2003 2003: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:30.125160224 +0200 +++ log/7/check-generated 2024-05-23 11:17:30.125160224 +0200 @@ -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/7/ 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 server.cmd Testnum 2003 === End of file server.cmd === Start of file test2003.txt foo bar bar foo moo === End of file test2003.txt === Start of file tftp_server.log 11:17:28.123838 Wrote pid 140644 to log/7/server/tftp_server.pid 11:17:28.123924 Wrote port 39697 to log/7/server/tftp_server.port 11:17:28.123931 Running IPv4 version on port UDP/39697 11:17:29.128296 trying to get file: verifiedserver mode 1 11:17:29.128310 Are-we-friendly question received 11:17:29.128318 write 11:17:29.128333 read 11:17:29.128794 read: 4 11:17:29.128835 end of one transfer === End of file tftp_server.log === Start of file valgrind2003 ==141433== ==141433== Process terminating with default action of signal 4 (SIGILL) ==141433== Illegal opcode at address 0x10B06D ==141433== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141433== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2003 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 39107 --port2 39511 --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:33791 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 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 45073 --port2 44489 --nghttpx "nghttpx" --pidfile "log/2/server/http_v2_server.pid" --logfile "log/2/http_v2_server.log" --logdir "log/2" --connect 127.0.0.1:44205 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: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 39155 --port2 38261 --nghttpx "nghttpx" --pidfile "log/5/server/http_v2_server.pid" --logfile "log/5/http_v2_server.log" --logdir "log/5" --connect 127.0.0.1:33519 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 2050...[Connect to specific host via HTTP proxy (switch to 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/4/valgrind2050 ../src/curl -q --output log/4/curl2050.out --include --trace-ascii log/4/trace2050 --trace-time http://www.example.com.2050/2050 --connect-to ::connect.example.com.2050:41947 -x 127.0.0.1:34455 > log/4/stdout2050 2> log/4/stderr2050 2050: 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 2050 === Start of file server.cmd Testnum 2050 === End of file server.cmd === Start of file valgrind2050 ==141488== ==141488== Process terminating with default action of signal 4 (SIGILL) ==141488== Illegal opcode at address 0x10B06D ==141488== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141488== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2050 CMD (33792): ../libtool --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/valgrind2053 ../src/curl -q --output log/6/curl2053.out --include --trace-ascii log/6/trace2053 --trace-time http://10.0.0.1:8081/2053 --connect-to 10.0.0.1:8081:127.0.0.1:42657 --next http://[fc00::1]:8082/2053 --connect-to [fc00::1]:8082:127.0.0.1:42657 > log/6/stdout2053 2> log/6/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/11/valgrind2052 ../src/curl -q --include --trace-ascii log/11/trace2052 --trace-time http://www.example.com:39499/2052 --resolve www.example.com:39499:127.0.0.1 -w "%{num_connects}\n" --next --resolve -www.example.com:39499 --connect-to ::127.0.0.1:39499 http://www.example.com:39499/2052 -w "%{num_connects}\n" > log/11/stdout2052 2> log/11/stderr2052 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/1/valgrind2051 ../src/curl -q --include --trace-ascii log/1/trace2051 --trace-time http://127.0.0.1:39283/2051 -w "%{num_connects}\n" --next --connect-to ::127.0.0.1:39283 http://127.0.0.1:39283/2051 -w "%{num_connects}\n" --next http://127.0.0.1:39283/2051 -w "%{num_connects}\n" > log/1/stdout2051 2> log/1/stderr2051 2051: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:30.228495680 +0200 +++ log/1/check-generated 2024-05-23 11:17:30.228495680 +0200 @@ -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/1/ 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 server.cmd Testnum 2051 === End of file server.cmd === Start of file valgrind2051 ==141505== ==141505== Process terminating with default action of signal 4 (SIGILL) ==141505== Illegal opcode at address 0x10B06D ==141505== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141505== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2051 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/6/valgrind2053 ../src/curl -q --output log/6/curl2053.out --include --trace-ascii log/6/trace2053 --trace-time http://10.0.0.1:8081/2053 --connect-to 10.0.0.1:8081:127.0.0.1:42657 --next http://[fc00::1]:8082/2053 --connect-to [fc00::1]:8082:127.0.0.1:42657 > log/6/stdout2053 2> log/6/stderr2053 2053: 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 2053 === Start of file server.cmd Testnum 2053 === End of file server.cmd === Start of file valgrind2053 ==141598== ==141598== Process terminating with default action of signal 4 (SIGILL) ==141598== Illegal opcode at address 0x10B06D ==141598== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141598== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2053 CMD (33792): ../libtool --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/valgrind2055 ../src/curl -q --output log/12/curl2055.out --include --trace-ascii log/12/trace2055 --trace-time http://www.example.com.2055/2055 --connect-to ::connect.example.com.2055:44175 -x 127.0.0.1:45503 --preproxy socks5://127.0.0.1:37829 > log/12/stdout2055 2> log/12/stderr2055 CMD (33792): ../libtool --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/valgrind2054 ../src/curl -q --output log/10/curl2054.out --include --trace-ascii log/10/trace2054 --trace-time http://127.0.0.1:36145/2054 --connect-to foo::bar: --connect-to :123::456 --next http://www.example.com:36145/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::36145 --connect-to :8083::123 --next http://www.example.com:8084/2054 --connect-to www.example.com:8084:127.0.0.1:36145 --connect-to www.example.com:8084:foo:123 > log/10/stdout2054 2> log/10/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/9/valgrind2056 ../src/curl -q --output log/9/curl2056.out --include --trace-ascii log/9/trace2056 --trace-time --negotiate http://127.0.0.1:40247/2056 > log/9/stdout2056 2> log/9/stderr2056 CMD (33792): ../libtool --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/valgrind2057 ../src/curl -q --output log/3/curl2057.out --include --trace-ascii log/3/trace2057 --trace-time --negotiate http://127.0.0.1:46715/2057 > log/3/stdout2057 2> log/3/stderr2057 CMD (33792): ../libtool --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/valgrind2058 ../src/curl -q --output log/7/curl2058.out --include --trace-ascii log/7/trace2058 --trace-time http://127.0.0.1:35853/2058 -u auser:apasswd --digest -T log/7/2058 -x http://127.0.0.1:35853 -C 2 -X GET > log/7/stdout2058 2> log/7/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/5/valgrind2061 ../src/curl -q --output log/5/curl2061.out --include --trace-ascii log/5/trace2061 --trace-time http://127.0.0.1:33519/2061 -u testuser:testpass --digest > log/5/stdout2061 2> log/5/stderr2061 test 2052...[Connect to specific host: 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/11/valgrind2052 ../src/curl -q --include --trace-ascii log/11/trace2052 --trace-time http://www.example.com:39499/2052 --resolve www.example.com:39499:127.0.0.1 -w "%{num_connects}\n" --next --resolve -www.example.com:39499 --connect-to ::127.0.0.1:39499 http://www.example.com:39499/2052 -w "%{num_connects}\n" > log/11/stdout2052 2> log/11/stderr2052 2052: stdout FAILED: --- log/11/check-expected 2024-05-23 11:17:30.528501844 +0200 +++ log/11/check-generated 2024-05-23 11:17:30.528501844 +0200 @@ -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/11/ 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 server.cmd Testnum 2052 === End of file server.cmd === Start of file valgrind2052 ==141597== ==141597== Process terminating with default action of signal 4 (SIGILL) ==141597== Illegal opcode at address 0x10B06D ==141597== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141597== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2052 test 2055...[Connect to specific host via SOCKS proxy and HTTP proxy (switch to 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/12/valgrind2055 ../src/curl -q --output log/12/curl2055.out --include --trace-ascii log/12/trace2055 --trace-time http://www.example.com.2055/2055 --connect-to ::connect.example.com.2055:44175 -x 127.0.0.1:45503 --preproxy socks5://127.0.0.1:37829 > log/12/stdout2055 2> log/12/stderr2055 2055: 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 2055 === Start of file server.cmd Testnum 2055 === End of file server.cmd === Start of file valgrind2055 ==141707== ==141707== Process terminating with default action of signal 4 (SIGILL) ==141707== Illegal opcode at address 0x10B06D ==141707== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141707== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2055 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/10/valgrind2054 ../src/curl -q --output log/10/curl2054.out --include --trace-ascii log/10/trace2054 --trace-time http://127.0.0.1:36145/2054 --connect-to foo::bar: --connect-to :123::456 --next http://www.example.com:36145/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::36145 --connect-to :8083::123 --next http://www.example.com:8084/2054 --connect-to www.example.com:8084:127.0.0.1:36145 --connect-to www.example.com:8084:foo:123 > log/10/stdout2054 2> log/10/stderr2054 2054: 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 2054 === Start of file server.cmd Testnum 2054 === End of file server.cmd === Start of file valgrind2054 ==141701== ==141701== Process terminating with default action of signal 4 (SIGILL) ==141701== Illegal opcode at address 0x10B06D ==141701== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141701== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2054 setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libstubgss.so setenv CURL_STUB_GSS_CREDS = "KRB5_Alice" test 2056...[HTTP Negotiate authentication (stub krb5)] ../libtool --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/valgrind2056 ../src/curl -q --output log/9/curl2056.out --include --trace-ascii log/9/trace2056 --trace-time --negotiate http://127.0.0.1:40247/2056 > log/9/stdout2056 2> log/9/stderr2056 2056: 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 2056 === Start of file server.cmd Testnum 2056 === End of file server.cmd === Start of file valgrind2056 ==141810== ==141810== Process terminating with default action of signal 4 (SIGILL) ==141810== Illegal opcode at address 0x10B06D ==141810== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141810== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2056 setenv LD_PRELOAD = /startdir/src/build-curl/tests/libtest/.libs/libstubgss.so setenv CURL_STUB_GSS_CREDS = "NTLM_Alice" test 2057...[HTTP Negotiate authentication (stub 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/3/valgrind2057 ../src/curl -q --output log/3/curl2057.out --include --trace-ascii log/3/trace2057 --trace-time --negotiate http://127.0.0.1:46715/2057 > log/3/stdout2057 2> log/3/stderr2057 2057: 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 2057 === Start of file server.cmd Testnum 2057 === End of file server.cmd === Start of file valgrind2057 ==141819== ==141819== Process terminating with default action of signal 4 (SIGILL) ==141819== Illegal opcode at address 0x10B06D ==141819== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141819== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2057 test 2058...[HTTP POST --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/7/valgrind2058 ../src/curl -q --output log/7/curl2058.out --include --trace-ascii log/7/trace2058 --trace-time http://127.0.0.1:35853/2058 -u auser:apasswd --digest -T log/7/2058 -x http://127.0.0.1:35853 -C 2 -X GET > log/7/stdout2058 2> log/7/stderr2058 2058: 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 2058 === Start of file 2058 test === End of file 2058 === Start of file server.cmd Testnum 2058 === End of file server.cmd === Start of file valgrind2058 ==141899== ==141899== Process terminating with default action of signal 4 (SIGILL) ==141899== Illegal opcode at address 0x10B06D ==141899== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141899== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2058 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/5/valgrind2061 ../src/curl -q --output log/5/curl2061.out --include --trace-ascii log/5/trace2061 --trace-time http://127.0.0.1:33519/2061 -u testuser:testpass --digest > log/5/stdout2061 2> log/5/stderr2061 2061: 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 2061 === Start of file server.cmd Testnum 2061 === 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/2/valgrind2060 ../src/curl -q --output log/2/curl2060.out --include --trace-ascii log/2/trace2060 --trace-time http://127.0.0.1:44205/2060 -u auser:apasswd --digest -T log/2/2060 -x http://127.0.0.1:44205 -C 2 -X GET > log/2/stdout2060 2> log/2/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/8/valgrind2059 ../src/curl -q --output log/8/curl2059.out --include --trace-ascii log/8/trace2059 --trace-time http://127.0.0.1:33791/2059 -u auser:apasswd --digest -T log/8/2059 -x http://127.0.0.1:33791 -C 2 -X GET > log/8/stdout2059 2> log/8/stderr2059 CMD (33792): ../libtool --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/valgrind2063 ../src/curl -q --output log/1/curl2063.out --include --trace-ascii log/1/trace2063 --trace-time http://127.0.0.1:39283/2063 -u testuser:testpass --digest > log/1/stdout2063 2> log/1/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/4/valgrind2062 ../src/curl -q --output log/4/curl2062.out --include --trace-ascii log/4/trace2062 --trace-time http://127.0.0.1:41947/2062 -u testuser:testpass --digest > log/4/stdout2062 2> log/4/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/11/valgrind2065 ../src/curl -q --output log/11/curl2065.out --include --trace-ascii log/11/trace2065 --trace-time http://127.0.0.1:39499/2065 -u testuser:test2pass --digest > log/11/stdout2065 2> log/11/stderr2065 CMD (33792): ../libtool --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/valgrind2064 ../src/curl -q --output log/6/curl2064.out --include --trace-ascii log/6/trace2064 --trace-time http://127.0.0.1:42657/2064 -u testuser:test2pass --digest > log/6/stdout2064 2> log/6/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/12/valgrind2066 ../src/curl -q --output log/12/curl2066.out --include --trace-ascii log/12/trace2066 --trace-time http://127.0.0.1:44175/2066 -u testuser:test2pass --digest > log/12/stdout2066 2> log/12/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/10/valgrind2067 ../src/curl -q --output log/10/curl2067.out --include --trace-ascii log/10/trace2067 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:36145/2067 > log/10/stdout2067 2> log/10/stderr2067 nd of file server.cmd === Start of file valgrind2061 ==141981== ==141981== Process terminating with default action of signal 4 (SIGILL) ==141981== Illegal opcode at address 0x10B06D ==141981== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141981== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2061 test 2060...[HTTP POST --digest with PUT, resumed upload, modified method, SHA-512-256 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/2/valgrind2060 ../src/curl -q --output log/2/curl2060.out --include --trace-ascii log/2/trace2060 --trace-time http://127.0.0.1:44205/2060 -u auser:apasswd --digest -T log/2/2060 -x http://127.0.0.1:44205 -C 2 -X GET > log/2/stdout2060 2> log/2/stderr2060 2060: 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 2060 === Start of file 2060 test === End of file 2060 === Start of file server.cmd Testnum 2060 === End of file server.cmd === Start of file valgrind2060 ==141945== ==141945== Process terminating with default action of signal 4 (SIGILL) ==141945== Illegal opcode at address 0x10B06D ==141945== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141945== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2060 test 2059...[HTTP POST --digest with PUT, resumed upload, modified method, SHA-256 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/8/valgrind2059 ../src/curl -q --output log/8/curl2059.out --include --trace-ascii log/8/trace2059 --trace-time http://127.0.0.1:33791/2059 -u auser:apasswd --digest -T log/8/2059 -x http://127.0.0.1:33791 -C 2 -X GET > log/8/stdout2059 2> log/8/stderr2059 2059: 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 2059 === Start of file 2059 test === End of file 2059 === Start of file server.cmd Testnum 2059 === End of file server.cmd === Start of file valgrind2059 ==141942== ==141942== Process terminating with default action of signal 4 (SIGILL) ==141942== Illegal opcode at address 0x10B06D ==141942== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==141942== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2059 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/1/valgrind2063 ../src/curl -q --output log/1/curl2063.out --include --trace-ascii log/1/trace2063 --trace-time http://127.0.0.1:39283/2063 -u testuser:testpass --digest > log/1/stdout2063 2> log/1/stderr2063 2063: 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 2063 === Start of file server.cmd Testnum 2063 === End of file server.cmd === Start of file valgrind2063 ==142137== ==142137== Process terminating with default action of signal 4 (SIGILL) ==142137== Illegal opcode at address 0x10B06D ==142137== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142137== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2063 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/4/valgrind2062 ../src/curl -q --output log/4/curl2062.out --include --trace-ascii log/4/trace2062 --trace-time http://127.0.0.1:41947/2062 -u testuser:testpass --digest > log/4/stdout2062 2> log/4/stderr2062 2062: 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 2062 === Start of file server.cmd Testnum 2062 === End of file server.cmd === Start of file valgrind2062 ==142120== ==142120== Process terminating with default action of signal 4 (SIGILL) ==142120== Illegal opcode at address 0x10B06D ==142120== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142120== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2062 test 2065...[HTTP with RFC7616 Digest authorization with bad password, SHA-512-256 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/11/valgrind2065 ../src/curl -q --output log/11/curl2065.out --include --trace-ascii log/11/trace2065 --trace-time http://127.0.0.1:39499/2065 -u testuser:test2pass --digest > log/11/stdout2065 2> log/11/stderr2065 2065: 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 2065 === Start of file server.cmd Testnum 2065 === End of file server.cmd === Start of file valgrind2065 ==142248== ==142248== Process terminating with default action of signal 4 (SIGILL) ==142248== Illegal opcode at address 0x10B06D ==142248== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142248== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2065 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/6/valgrind2064 ../src/curl -q --output log/6/curl2064.out --include --trace-ascii log/6/trace2064 --trace-time http://127.0.0.1:42657/2064 -u testuser:test2pass --digest > log/6/stdout2064 2> log/6/stderr2064 2064: 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 2064 === Start of file server.cmd Testnum 2064 === End of file server.cmd === Start of file valgrind2064 ==142228== ==142228== Process terminating with default action of signal 4 (SIGILL) ==142228== Illegal opcode at address 0x10B06D ==142228== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142228== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2064 test 2066...[HTTP with RFC7616 Digest authorization with bad password, SHA-256 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/12/valgrind2066 ../src/curl -q --output log/12/curl2066.out --include --trace-ascii log/12/trace2066 --trace-time http://127.0.0.1:44175/2066 -u testuser:test2pass --digest > log/12/stdout2066 2> log/12/stderr2066 2066: 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 2066 === Start of file server.cmd Testnum 2066 === End of file server.cmd === Start of file valgrind2066 ==142326== ==142326== Process terminating with default action of signal 4 (SIGILL) ==142326== Illegal opcode at address 0x10B06D ==142326== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142326== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2066 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/10/valgrind2067 ../src/curl -q --outCMD (33792): ../libtool --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/valgrind2068 ../src/curl -q --output log/9/curl2068.out --include --trace-ascii log/9/trace2068 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:40247/2068 > log/9/stdout2068 2> log/9/stderr2068 CMD (33792): ../libtool --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/valgrind2072 ../src/curl -q --output log/5/curl2072.out --trace-ascii log/5/trace2072 --trace-time file://///startdir/src/build-curl/tests/log/5/test2072.txt > log/5/stdout2072 2> log/5/stderr2072 put log/10/curl2067.out --include --trace-ascii log/10/trace2067 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:36145/2067 > log/10/stdout2067 2> log/10/stderr2067 2067: 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 2067 === Start of file server.cmd Testnum 2067 === End of file server.cmd === Start of file valgrind2067 ==142351== ==142351== Process terminating with default action of signal 4 (SIGILL) ==142351== Illegal opcode at address 0x10B06D ==142351== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142351== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2067 test 2068...[HTTP POST --digest with SHA-512-256, userhash=false 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/9/valgrind2068 ../src/curl -q --output log/9/curl2068.out --include --trace-ascii log/9/trace2068 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:40247/2068 > log/9/stdout2068 2> log/9/stderr2068 2068: 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 2068 === Start of file server.cmd Testnum 2068 === End of file server.cmd === Start of file valgrind2068 ==142416== ==142416== Process terminating with default action of signal 4 (SIGILL) ==142416== Illegal opcode at address 0x10B06D ==142416== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142416== by 0x10B06D: 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/3/valgrind2069 ../src/curl -q --output log/3/curl2069.out --include --trace-ascii log/3/trace2069 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:46715/2069 > log/3/stdout2069 2> log/3/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/8/valgrind2074 ../src/curl -q --output log/8/curl2074.out --include --trace-ascii log/8/trace2074 --trace-time http://127.0.0.1:33791/2074 --oauth2-bearer mF_9.B5f-4.1JqM > log/8/stdout2074 2> log/8/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/7/valgrind2071 ../src/curl -q --output log/7/curl2071.out --trace-ascii log/7/trace2071 --trace-time file://127.0.0.1/startdir/src/build-curl/tests/log/7/test2070.txt > log/7/stdout2071 2> log/7/stderr2071 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/5/valgrind2072 ../src/curl -q --output log/5/curl2072.out --trace-ascii log/5/trace2072 --trace-time file://///startdir/src/build-curl/tests/log/5/test2072.txt > log/5/stdout2072 2> log/5/stderr2072 2072: data FAILED: --- log/5/check-expected 2024-05-23 11:17:31.448520744 +0200 +++ log/5/check-generated 2024-05-23 11:17:31.448520744 +0200 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/5/ 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 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 ==142489== ==142489== Process terminating with default action of signal 4 (SIGILL) ==142489== Illegal opcode at address 0x10B06D ==142489== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142489== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2072 test 2069...[HTTP POST --digest with SHA-256, userhash=true 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/3/valgrind2069 ../src/curl -q --output log/3/curl2069.out --include --trace-ascii log/3/trace2069 --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:46715/2069 > log/3/stdout2069 2> log/3/stderr2069 2069: 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 2069 === Start of file server.cmd Testnum 2069 === End of file server.cmd === Start of file valgrind2069 ==142441== ==142441== Process terminating with default action of signal 4 (SIGILL) ==142441== Illegal opcode at address 0x10B06D ==142441== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142441== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2069 CMD (33792): ../libtool --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/valgrind2073 ../src/curl -q --output log/2/curl2073.out --include --trace-ascii log/2/trace2073 --trace-time http://127.0.0.1:44205/2073 -F 'name=a;filename=a.pdf' --next http://127.0.0.1:44205/2073 -F 'name=b;filename=b.jpg' > log/2/stdout2073 2> log/2/stderr2073 CMD (33792): ../libtool --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/valgrind2075 ../src/curl -q --output log/1/curl2075.out --include --trace-ascii log/1/trace2075 --trace-time --disallow-username-in-url http://username:password@example.com/ > log/1/stdout2075 2> log/1/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/4/valgrind2076 ../src/curl -q --output log/4/curl2076.out --include --trace-ascii log/4/trace2076 --trace-time "http://127.0.0.1:41947/2076?query" -u testuser:testpass --digest > log/4/stdout2076 2> log/4/stderr2076 CMD (33792): ../libtool --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/valgrind2078 ../src/curl -q --output log/6/curl2078.out --include --trace-ascii log/6/trace2078 --trace-time http://127.0.0.1:42657/2078 --negotiate --data name=value > log/6/stdout2078 2> log/6/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/11/valgrind2077 ../src/curl -q --output log/11/curl2077.out --include --trace-ascii log/11/trace2077 --trace-time http://127.0.0.1:39499/2077 --fail --negotiate > log/11/stdout2077 2> log/11/stderr2077 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/7/valgrind2071 ../src/curl -q --output log/7/curl2071.out --trace-ascii log/7/trace2071 --trace-time file://127.0.0.1/startdir/src/build-curl/tests/log/7/test2070.txt > log/7/stdout2071 2> log/7/stderr2071 2071: data FAILED: --- log/7/check-expected 2024-05-23 11:17:31.471854558 +0200 +++ log/7/check-generated 2024-05-23 11:17:31.471854558 +0200 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/7/ 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 server.cmd Testnum 2071 === End of file server.cmd === Start of file valgrind2071 ==142472== ==142472== Process terminating with default action of signal 4 (SIGILL) ==142472== Illegal opcode at address 0x10B06D ==142472== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142472== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2071 test 2073...[HTTP form posts with handle 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/2/valgrind2073 ../src/curl -q --output log/2/curl2073.out --include --trace-ascii log/2/trace2073 --trace-time http://127.0.0.1:44205/2073 -F 'name=a;filename=a.pdf' --next http://127.0.0.1:44205/2073 -F 'name=b;filename=b.jpg' > log/2/stdout2073 2> log/2/stderr2073 2073: 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 2073 === Start of file server.cmd Testnum 2073 === End of file server.cmd === Start of file valgrind2073 ==142512== ==142512== Process terminating with default action of signal 4 (SIGILL) ==142512== Illegal opcode at address 0x10B06D ==142512== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142512== by 0x10B06D: 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/8/valgrind2074 ../src/curl -q --output log/8/curl2074.out --include --trace-ascii log/8/trace2074 --trace-time http://127.0.0.1:33791/2074 --oauth2-bearer mF_9.B5f-4.1JqM > log/8/stdout2074 2> log/8/stderr2074 2074: 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 2074 === Start of file server.cmd Testnum 2074 === End of file server.cmd === Start of file valgrind2074 ==142588== ==142588== Process terminating with default action of signal 4 (SIGILL) ==142588== Illegal opcode at address 0x10B06D ==142588== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142588== by 0x10B06D: 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/1/valgrind2075 ../src/curl -q --output log/1/curl2075.out --include --trace-ascii log/1/trace2075 --trace-time --disallow-username-in-url http://username:password@example.com/ > log/1/stdout2075 2> log/1/stderr2075 curl returned 132, when expecting 67 2075: exit FAILED == Contents of files in the log/1/ dir after test 2075 === Start of file server.cmd Testnum 2075 === End of file server.cmd === Start of file valgrind2075 ==142721== ==142721== Process terminating with default action of signal 4 (SIGILL) ==142721== Illegal opcode at address 0x10B06D ==142721== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142721== by 0x10B06D: 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/4/valgrind2076 ../src/curl -q --output log/4/curl2076.out --include --trace-ascii log/4/trace2076 --trace-time "http://127.0.0.1:41947/2076?query" -u testuser:testpass --digest > log/4/stdout2076 2> log/4/stderr2076 2076: 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 2076 === Start of file server.cmd Testnum 2076 === End of file server.cmd === Start of file valgrind2076 ==142771== ==142771== Process terminating with default action of signal 4 (SIGILL) ==142771== Illegal opcode at address 0x10B06D ==142771== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142771== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2076 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/6/valgrind2078 ../src/curl -q --output log/6/curl2078.out --include --trace-ascii log/6/trace2078 --trace-time http://127.0.0.1:42657/2078 --negotiate --data name=value > log/6/stdout2078 2> log/6/stderr2078 2078: 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 2078 === Start of file server.cmd Testnum 2078 === End of file server.cmd === Start of file valgrind2078 ==142832== ==142832== Process terminating with default action of signal 4 (SIGILL) ==142832== Illegal opcode at address 0x10B06D ==142832== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142832== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2078 CMD (33792): ../libtool --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/valgrind2080 ../src/curl -q --output log/12/curl2080.out --include --trace-ascii log/12/trace2080 --trace-time -K log/12/config2080 file://de\>v/null > log/12/stdout2080 2> log/12/stderr2080 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/11/valgrind2077 ../src/curl -q --output log/11/curl2077.out --include --trace-ascii log/11/trace2077 --trace-time http://127.0.0.1:39499/2077 --fail --negotiate > log/11/stdout2077 2> log/11/stderr2077 2077: data FAILED: --- log/11/check-expected 2024-05-23 11:17:31.811861542 +0200 +++ log/11/check-generated 2024-05-23 11:17:31.811861542 +0200 @@ -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/11/ 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 server.cmd Testnum 2077 === End of file server.cmd === Start of file valgrind2077 ==142825== ==142825== Process terminating with default action of signal 4 (SIGILL) ==142825== Illegal opcode at address 0x10B06D ==142825== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142825== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2077 * 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/12/valgrind2080 ../src/curl -q --output log/12/curl2080.out --include --trace-ascii log/12/trace2080 --trace-time -K log/12/config2080 file://de\>v/null > log/12/stdout2080 2> log/12/stderr2080 curl returned 132, when expecting 26 2080: exit FAILED == Contents of files in the log/12/ dir after test 2080 === Start of file config2080 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDMDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDbDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDeDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDagentDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDCMD (33792): ../libtool --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/valgrind2081 ../src/curl -q --include --trace-ascii log/10/trace2081 --trace-time http://user:pass@127.0.0.1:36145/we/want/our/2081#anchor --location --referer ';auto' --write-out '%{referer}\n' > log/10/stdout2081 2> log/10/stderr2081 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD$DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD!DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD === End of file config2080 === Start of file server.cmd Testnum 2080 === End of file server.cmd === Start of file valgrind2080 ==142920== ==142920== Process terminating with default action of signal 4 (SIGILL) ==142920== Illegal opcode at address 0x10B06D ==142920== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142920== by 0x10B06D: 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/2/valgrind2200 ../src/curl -q --output log/2/curl2200.out --include --trace log/2/trace2200 --trace-time mqtt://127.0.0.1:41955/2200 -u fakeuser:fakepasswd > log/2/stdout2200 2> log/2/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/8/valgrind2201 ../src/curl -q --output log/8/curl2201.out --include --trace log/8/trace2201 --trace-time mqtt://127.0.0.1:37393/2201 -d something -u testuser:testpasswd > log/8/stdout2201 2> log/8/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/1/valgrind2202 ../src/curl -q --output log/1/curl2202.out --include --trace log/1/trace2202 --trace-time mqtt://127.0.0.1:44675/2202 -d something -u fakeuser:fakepasswd > log/1/stdout2202 2> log/1/stderr2202 CMD (33792): ../libtool --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/valgrind2082 ./libtest/libprereq 127.0.0.1:40247/2082 > log/9/stdout2082 2> log/9/stderr2082 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/10/valgrind2081 ../src/curl -q --include --trace-ascii log/10/trace2081 --trace-time http://user:pass@127.0.0.1:36145/we/want/our/2081#anchor --location --referer ';auto' --write-out '%{referer}\n' > log/10/stdout2081 2> log/10/stderr2081 2081: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:31.885196383 +0200 +++ log/10/check-generated 2024-05-23 11:17:31.885196383 +0200 @@ -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:36145/we/want/our/2081[LF] == Contents of files in the log/10/ 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:36145/we/want/our/2081[LF] === End of file check-expected === Start of file server.cmd Testnum 2081 === End of file server.cmd === Start of file valgrind2081 ==142954== ==142954== Process terminating with default action of signal 4 (SIGILL) ==142954== Illegal opcode at address 0x10B06D ==142954== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==142954== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2081 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/2/valgrind2200 ../src/curl -q --output log/2/curl2200.out --include --trace log/2/trace2200 --trace-time mqtt://127.0.0.1:41955/2200 -u fakeuser:fakepasswd > log/2/stdout2200 2> log/2/stderr2200 2200: 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 2200 === Start of file server.cmd error-CONNACK 5 Testnum 2200 === End of file server.cmd === Start of file valgrind2200 ==143116== ==143116== Process terminating with default action of signal 4 (SIGILL) ==143116== Illegal opcode at address 0x10B06D ==143116== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143116== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2200 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/8/valgrind2201 ../src/curl -q --output log/8/curl2201.out --include --trace log/8/trace2201 --trace-time mqtt://127.0.0.1:37393/2201 -d something -u testuser:testpasswd > log/8/stdout2201 2> log/8/stderr2201 2201: 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 2201 === Start of file server.cmd Testnum 2201 === End of file server.cmd === Start of file valgrind2201 ==143118== ==143118== Process terminating with default action of signal 4 (SIGILL) ==143118== Illegal opcode at address 0x10B06D ==143118== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143118== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2201 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/1/valgrind2202 ../src/curl -q --output log/1/curl2202.out --include --trace log/1/trace2202 --trace-time mqtt://127.0.0.1:44675/2202 -d something -u fakeuser:fakepasswd > log/1/stdout2202 2> log/1/stderr2202 2202: 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 2202 === Start of file server.cmd error-CONNACK 5 Testnum 2202 === End of file server.cmd === Start of file valgrind2202 ==143208== ==143208== Process terminating with default action of signal 4 (SIGILL) ==143208== Illegal opcode at address 0x10B06D ==143208== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143208== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2202 CMD (33792): ../libtool --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/valgrind2203 ../src/curl -q --output log/4/curl2203.out --include --trace log/4/trace2203 --trace-time mqtt://127.0.0.1:33563/2203 > log/4/stdout2203 2> log/4/stderr2203 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/9/valgrind2082 ./libtest/libprereq 127.0.0.1:40247/2082 > log/9/stdout2082 2> log/9/stderr2082 2082: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:32.268537591 +0200 +++ log/9/check-generated 2024-05-23 11:17:32.268537591 +0200 @@ -1,5 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 40247[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/9/ 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 = 40247[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file server.cmd Testnum 2082 === End of file server.cmd === Start of file stderr2082 URL: 127.0.0.1:40247/2082 === End of file stderr2082 === Start of file valgrind2082 ==142947== ==142947== Process terminating with default action of signal 4 (SIGILL) ==142947== Illegal opcode at address 0x48DC18B ==142947== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==142947== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==142947== by 0x48DC18B: Curl_open (url.c:519) ==142947== by 0x487CCEF: curl_easy_init (easy.c:368) ==142947== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==142947== by 0x10909C: main (first.c:178) ==142947== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==142947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==142947== by 0x4A58EC8: __tsearch (tsearch.c:337) ==142947== by 0x4A58EC8: tsearch (tsearch.c:290) ==142947== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==142947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==142947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==142947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==142947== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==142947== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==142947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==142947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==142947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==142947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==142947== by 0x497836B: setlocale (setlocale.c:337) ==142947== by 0x109056: main (first.c:157) ==142947== ==142947== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==142947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==142947== by 0x4A58EC8: __tsearch (tsearch.c:337) ==142947== by 0x4A58EC8: tsearch (tsearch.c:290) ==142947== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==142947== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==142947== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==142947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==142947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==142947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==142947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==142947== by 0x497836B: setlocale (setlocale.c:337) ==142947== by 0x109056: main (first.c:157) ==142947== ==142947== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==142947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==142947== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==142947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==142947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==142947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==142947== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==142947== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==142947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==142947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==142947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==142947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==142947== by 0x497836B: setlocale (setlocale.c:337) ==142947== by 0x109056: main (first.c:157) ==142947== ==142947== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==142947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==142947== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==142947== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==142947== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==142947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==142947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==142947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==142947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==142947== by 0x497836B: setlocale (setlocale.c:337) ==142947== by 0x109056: main (first.c:157) ==142947== ==142947== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==142947== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==142947== by 0x48DC163: Curl_open (url.c:510) ==142947== by 0x487CCEF: curl_easy_init (easy.c:368) ==142947== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==142947== by 0x10909C: main (first.c:178) ==142947== ==142947== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==142947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==142947== by 0x4A58EC8: __tsearch (tsearch.c:337) ==142947== by 0x4A58EC8: tsearch (tsearch.c:290) ==142947== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==142947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==142947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==142947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==142947== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==142947== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==142947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==142947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==142947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==142947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==142947== by 0x497836B: setlocale (setlocale.c:337) ==142947== by 0x109056: main (first.c:157) ==142947== ==142947== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==142947== at 0x4842788: malloc (vg_replace_malloc.c:446) ==142947== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==142947== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==142947== by 0x496C9A2: add_alias (gconv_conf.c:178) ==142947== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==142947== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==142947== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==142947== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==142947== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==142947== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==142947== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==142947== by 0x497836B: setlocale (setlocale.c:337) ==142947== by 0x109056: main (first.c:157) ==142947== === End of file valgrind2082 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/4/valgrind2203 ../src/curl -q --output log/4/curl2203.out --include --trace log/4/trace2203 --trace-time mqtt://127.0.0.1:33563/2203 > log/4/stdout2203 2> log/4/stderr2203 2203: 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 2203 === Start of file server.cmd error-CONNACK 5 Testnum 2203 === End of file server.cmd === Start of file valgrind220CMD (33792): ../libtool --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/valgrind2204 ../src/curl -q --output log/6/curl2204.out --include --trace log/6/trace2204 --trace-time mqtt://127.0.0.1:45003/2204 -u testuser:testpasswd > log/6/stdout2204 2> log/6/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/3/valgrind2084 ./libtest/libprereq 127.0.0.1:46715/2084#err > log/3/stdout2084 2> log/3/stderr2084 3 ==143354== ==143354== Process terminating with default action of signal 4 (SIGILL) ==143354== Illegal opcode at address 0x10B06D ==143354== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143354== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2203 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/6/valgrind2204 ../src/curl -q --output log/6/curl2204.out --include --trace log/6/trace2204 --trace-time mqtt://127.0.0.1:45003/2204 -u testuser:testpasswd > log/6/stdout2204 2> log/6/stderr2204 2204: 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 2204 === Start of file server.cmd Testnum 2204 === End of file server.cmd === Start of file valgrind2204 ==143410== ==143410== Process terminating with default action of signal 4 (SIGILL) ==143410== Illegal opcode at address 0x10B06D ==143410== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143410== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2204 CMD (33792): ../libtool --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/valgrind2083 ./libtest/libprereq ftp://127.0.0.1:35155/test-2083/ > log/5/stdout2083 2> log/5/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/7/valgrind2085 ./libtest/libprereq 127.0.0.1:35853/2085#redir > log/7/stdout2085 2> log/7/stderr2085 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/3/valgrind2084 ./libtest/libprereq 127.0.0.1:46715/2084#err > log/3/stdout2084 2> log/3/stderr2084 2084: stdout FAILED: --- log/3/check-expected 2024-05-23 11:17:32.415207272 +0200 +++ log/3/check-generated 2024-05-23 11:17:32.415207272 +0200 @@ -1,5 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 46715[LF] -Local port = stripped[LF] -Returning = 1[LF] == Contents of files in the log/3/ 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 = 46715[LF] Local port = stripped[LF] Returning = 1[LF] === End of file check-expected === Start of file server.cmd Testnum 2084 === End of file server.cmd === Start of file stderr2084 URL: 127.0.0.1:46715/2084#err === End of file stderr2084 === Start of file valgrind2084 ==143076== ==143076== Process terminating with default action of signal 4 (SIGILL) ==143076== Illegal opcode at address 0x48DC18B ==143076== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==143076== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==143076== by 0x48DC18B: Curl_open (url.c:519) ==143076== by 0x487CCEF: curl_easy_init (easy.c:368) ==143076== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==143076== by 0x10909C: main (first.c:178) ==143076== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==143076== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143076== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143076== by 0x4A58EC8: tsearch (tsearch.c:290) ==143076== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143076== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143076== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143076== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143076== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143076== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143076== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143076== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143076== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143076== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143076== by 0x497836B: setlocale (setlocale.c:337) ==143076== by 0x109056: main (first.c:157) ==143076== ==143076== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==143076== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143076== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143076== by 0x4A58EC8: tsearch (tsearch.c:290) ==143076== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143076== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143076== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143076== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143076== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143076== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143076== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143076== by 0x497836B: setlocale (setlocale.c:337) ==143076== by 0x109056: main (first.c:157) ==143076== ==143076== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==143076== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143076== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143076== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143076== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143076== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143076== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143076== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143076== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143076== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143076== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143076== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143076== by 0x497836B: setlocale (setlocale.c:337) ==143076== by 0x109056: main (first.c:157) ==143076== ==143076== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==143076== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143076== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143076== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143076== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143076== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143076== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143076== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143076== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143076== by 0x497836B: setlocale (setlocale.c:337) ==143076== by 0x109056: main (first.c:157) ==143076== ==143076== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==143076== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==143076== by 0x48DC163: Curl_open (url.c:510) ==143076== by 0x487CCEF: curl_easy_init (easy.c:368) ==143076== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==143076== by 0x10909C: main (first.c:178) ==143076== ==143076== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==143076== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143076== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143076== by 0x4A58EC8: tsearch (tsearch.c:290) ==143076== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143076== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143076== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143076== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143076== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143076== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143076== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143076== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143076== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143076== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143076== by 0x497836B: setlocale (setlocale.c:337) ==143076== by 0x109056: main (first.c:157) ==143076== ==143076== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==143076== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143076== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143076== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143076== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143076== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143076== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143076== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143076== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143076== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143076== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143076== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143076== by 0x497836B: setlocale (setlocale.c:337) ==143076== by 0x109056: main (first.c:157) ==143076== === End of file valgrind2084 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/5/valgrind2083 ./libtest/libprereq ftp://127.0.0.1:35155/test-2083/ > log/5/stdout2083 2> log/5/stderr2083 2083: stdout FAILED: --- log/5/check-expected 2024-05-23 11:17:32.448541289 +0200 +++ log/5/check-generated 2024-05-23 11:17:32.448541289 +0200 @@ -1,5 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 35155[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/5/ 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 = 35155[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file server.cmd Testnum 2083 === End of file server.cmd === Start of file stderr2083 URL: ftp://127.0.0.1:35155/test-2083/ === End of file stderr2083 === Start of file valgrind2083 ==143071== ==143071== Process terminating with default action of signal 4 (SIGILL) ==143071== Illegal opcode at address 0x48DC18B ==143071== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==143071== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==143071== by 0x48DC18B: Curl_open (url.c:519) ==143071== by 0x487CCEF: curl_easy_init (easy.c:368) ==143071== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==143071== by 0x10909C: main (first.c:178) ==143071== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==143071== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143071== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143071== by 0x4A58EC8: tsearch (tsearch.c:290) ==143071== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143071== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143071== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143071== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143071== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143071== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143071== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143071== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143071== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143071== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143071== by 0x497836B: setlocale (setlocale.c:337) ==143071== by 0x109056: main (first.c:157) ==143071== ==143071== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==143071== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143071== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143071== by 0x4A58EC8: tsearch (tsearch.c:290) ==143071== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143071== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143071== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143071== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143071== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143071== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143071== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143071== by 0x497836B: setlocale (setlocale.c:337) ==143071== by 0x109056: main (first.c:157) ==143071== ==143071== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==143071== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143071== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143071== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143071== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143071== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143071== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143071== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143071== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143071== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143071== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143071== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143071== by 0x497836B: setlocale (setlocale.c:337) ==143071== by 0x109056: main (first.c:157) ==143071== ==143071== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==143071== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143071== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143071== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143071== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143071== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143071== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143071== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143071== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143071== by 0x497836B: setlocale (setlocale.c:337) ==143071== by 0x109056: main (first.c:157) ==143071== ==143071== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==143071== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==143071== by 0x48DC163: Curl_open (url.c:510) ==143071== by 0x487CCEF: curl_easy_init (easy.c:368) ==143071== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==143071== by 0x10909C: main (first.c:178) ==143071== ==143071== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==143071== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143071== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143071== by 0x4A58EC8: tsearch (tsearch.c:290) ==143071== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143071== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143071== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143071== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143071== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143071== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143071== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143071== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143071== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143071== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143071== by 0x497836B: setlocale (setlocale.c:337) ==143071== by 0x109056: main (first.c:157) ==143071== ==143071== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==143071== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143071== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143071== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143071== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143071== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143071== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143071== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143071== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143071== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143071== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143071== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143071== by 0x497836B: setlocale (setlocale.c:337) ==143071== by 0x109056: main (first.c:157) ==143071== === End of file valgrind2083 CMD (33792): ../libtool --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/valgrind3003 ../src/curl -q --output log/1/curl3003.out --include --trace-ascii log/1/trace3003 --trace-time smtp://127.0.0.1:34653/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/1/stdout3003 2> log/1/stderr3003 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/7/valgrind2085 ./libtest/libprereq 127.0.0.1:35853/2085#redir > log/7/stdout2085 2> log/7/stderr2085 2085: stdout FAILED: --- log/7/check-expected 2024-05-23 11:17:32.455208092 +0200 +++ log/7/check-generated 2024-05-23 11:17:32.455208092 +0200 @@ -1,10 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 35853[LF] -Local port = stripped[LF] -Returning = 0[LF] -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 35853[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/7/ 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 = 35853[LF] Local port = stripped[LF] Returning = 0[LF] Connected to 127.0.0.1[LF] Connected from 127.0.0.1[LF] Remote port = 35853[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file server.cmd Testnum 2085 === End of file server.cmd === Start of file stderr2085 URL: 127.0.0.1:35853/2085#redir === End of file stderr2085 === Start of file valgrind2085 ==143115== ==143115== Process terminating with default action of signal 4 (SIGILL) ==143115== Illegal opcode at address 0x48DC18B ==143115== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==143115== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==143115== by 0x48DC18B: Curl_open (url.c:519) ==143115== by 0x487CCEF: curl_easy_init (easy.c:368) ==143115== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==143115== by 0x10909C: main (first.c:178) ==143115== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==143115== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143115== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143115== by 0x4A58EC8: tsearch (tsearch.c:290) ==143115== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143115== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143115== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143115== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143115== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143115== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143115== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143115== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143115== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143115== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143115== by 0x497836B: setlocale (setlocale.c:337) ==143115== by 0x109056: main (first.c:157) ==143115== ==143115== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==143115== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143115== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143115== by 0x4A58EC8: tsearch (tsearch.c:290) ==143115== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143115== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143115== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143115== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143115== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143115== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143115== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143115== by 0x497836B: setlocale (setlocale.c:337) ==143115== by 0x109056: main (first.c:157) ==143115== ==143115== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==143115== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143115== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143115== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143115== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143115== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143115== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143115== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143115== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143115== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143115== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143115== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143115== by 0x497836B: setlocale (setlocale.c:337) ==143115== by 0x109056: main (first.c:157) ==143115== ==143115== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==143115== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143115== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143115== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143115== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143115== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143115== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143115== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143115== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143115== by 0x497836B: setlocale (setlocale.c:337) ==143115== by 0x109056: main (first.c:157) ==143115== ==143115== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==143115== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==143115== by 0x48DC163: Curl_open (url.c:510) ==143115== by 0x487CCEF: curl_easy_init (easy.c:368) ==143115== by 0x10909C: UnknownInlinedFun (libprereq.c:64) ==143115== by 0x10909C: main (first.c:178) ==143115== ==143115== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==143115== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143115== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143115== by 0x4A58EC8: tsearch (tsearch.c:290) ==143115== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143115== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143115== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143115== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143115== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143115== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143115== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143115== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143115== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143115== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143115== by 0x497836B: setlocale (setlocale.c:337) ==143115== by 0x109056: main (first.c:157) ==143115== ==143115== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==143115== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143115== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143115== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143115== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143115== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143115== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143115== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143115== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143115== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143115== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143115== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143115== by 0x497836B: setlocale (setlocale.c:337) ==143115== by 0x109056: main (first.c:157) ==143115== === End of file valgrind2085 test 3003...[SMTP with 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/1/valgrind3003 ../src/curl -q --output log/1/curl3003.out --include --trace-ascii log/1/trace3003 --trace-time smtp://127.0.0.1:34653/CMD (33792): ../libtool --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/valgrind3002 ../src/curl -q --output log/8/curl3002.out --include --trace-ascii log/8/trace3002 --trace-time smtp://127.0.0.1:37675/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/8/stdout3002 2> log/8/stderr3002 CMD (33792): ../libtool --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/valgrind2306 ./libtest/lib2306 http://127.0.0.1:44175/2306 http://127.0.0.1:44175/23060002 > log/12/stdout2306 2> log/12/stderr2306 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/1/stdout3003 2> log/1/stderr3003 3003: 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 3003 === Start of file server.cmd Testnum 3003 === End of file server.cmd === Start of file stdin-for-3003 From: different To: another body === End of file stdin-for-3003 === Start of file valgrind3003 ==143569== ==143569== Process terminating with default action of signal 4 (SIGILL) ==143569== Illegal opcode at address 0x10B06D ==143569== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143569== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3003 test 3002...[SMTP with 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/8/valgrind3002 ../src/curl -q --output log/8/curl3002.out --include --trace-ascii log/8/trace3002 --trace-time smtp://127.0.0.1:37675/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/8/stdout3002 2> log/8/stderr3002 3002: 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 3002 === Start of file server.cmd Testnum 3002 === End of file server.cmd === Start of file stdin-for-3002 From: different To: another body === End of file stdin-for-3002 === Start of file valgrind3002 ==143568== ==143568== Process terminating with default action of signal 4 (SIGILL) ==143568== Illegal opcode at address 0x10B06D ==143568== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143568== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3002 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/12/valgrind2306 ./libtest/lib2306 http://127.0.0.1:44175/2306 http://127.0.0.1:44175/23060002 > log/12/stdout2306 2> log/12/stderr2306 2306: 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 2306 === Start of file server.cmd Testnum 2306 === End of file server.cmd === Start of file stderr2306 URL: http://127.0.0.1:44175/2306 === End of file stderr2306 === Start of file valgrind2306 ==143462== ==143462== Process terminating with default action of signal 4 (SIGILL) ==143462== Illegal opcode at address 0x48DC18B ==143462== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==143462== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==143462== by 0x48DC18B: Curl_open (url.c:519) ==143462== by 0x487CCEF: curl_easy_init (easy.c:368) ==143462== by 0x10909C: UnknownInlinedFun (lib2306.c:40) ==143462== by 0x10909C: UnknownInlinedFun (lib2306.c:32) ==143462== by 0x10909C: main (first.c:178) ==143462== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==143462== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143462== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143462== by 0x4A58EC8: tsearch (tsearch.c:290) ==143462== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143462== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143462== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143462== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143462== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143462== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143462== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143462== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143462== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143462== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143462== by 0x497836B: setlocale (setlocale.c:337) ==143462== by 0x109045: main (first.c:157) ==143462== ==143462== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==143462== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143462== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143462== by 0x4A58EC8: tsearch (tsearch.c:290) ==143462== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143462== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143462== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143462== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143462== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143462== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143462== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143462== by 0x497836B: setlocale (setlocale.c:337) ==143462== by 0x109045: main (first.c:157) ==143462== ==143462== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==143462== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143462== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143462== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143462== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143462== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143462== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143462== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143462== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143462== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143462== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143462== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143462== by 0x497836B: setlocale (setlocale.c:337) ==143462== by 0x109045: main (first.c:157) ==143462== ==143462== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==143462== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143462== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143462== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143462== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143462== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143462== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143462== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143462== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143462== by 0x497836B: setlocale (setlocale.c:337) ==143462== by 0x109045: main (first.c:157) ==143462== ==143462== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==143462== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==143462== by 0x48DC163: Curl_open (url.c:510) ==143462== by 0x487CCEF: curl_easy_init (easy.c:368) ==143462== by 0x10909C: UnknownInlinedFun (lib2306.c:40) ==143462== by 0x10909C: UnknownInlinedFun (lib2306.c:32) ==143462== by 0x10909C: main (first.c:178) ==143462== ==143462== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==143462== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143462== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143462== by 0x4A58EC8: tsearch (tsearch.c:290) ==143462== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143462== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143462== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143462== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143462== CMD (33792): ../libtool --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/valgrind2308 ./libtest/lib2308 http://127.0.0.1:36145/2308 > log/10/stdout2308 2> log/10/stderr2308 by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143462== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143462== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143462== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143462== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143462== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143462== by 0x497836B: setlocale (setlocale.c:337) ==143462== by 0x109045: main (first.c:157) ==143462== ==143462== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==143462== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143462== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143462== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143462== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143462== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143462== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143462== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143462== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143462== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143462== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143462== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143462== by 0x497836B: setlocale (setlocale.c:337) ==143462== by 0x109045: main (first.c:157) ==143462== === End of file valgrind2306 CMD (33792): ../libtool --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/valgrind3004 ../src/curl -q --output log/9/curl3004.out --include --trace-ascii log/9/trace3004 --trace-time smtp://127.0.0.1:39915/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/9/stdout3004 2> log/9/stderr3004 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/10/valgrind2308 ./libtest/lib2308 http://127.0.0.1:36145/2308 > log/10/stdout2308 2> log/10/stderr2308 2308: stdout FAILED: --- log/10/check-expected 2024-05-23 11:17:32.815215490 +0200 +++ log/10/check-generated 2024-05-23 11:17:32.815215490 +0200 @@ -1 +0,0 @@ -Returned 23, should be 23.[LF] == Contents of files in the log/10/ dir after test 2308 === Start of file check-expected Returned 23, should be 23.[LF] === End of file check-expected === Start of file server.cmd Testnum 2308 === End of file server.cmd === Start of file stderr2308 URL: http://127.0.0.1:36145/2308 === End of file stderr2308 === Start of file valgrind2308 ==143471== ==143471== Process terminating with default action of signal 4 (SIGILL) ==143471== Illegal opcode at address 0x48DC18B ==143471== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==143471== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==143471== by 0x48DC18B: Curl_open (url.c:519) ==143471== by 0x487CCEF: curl_easy_init (easy.c:368) ==143471== by 0x10908B: UnknownInlinedFun (lib2308.c:45) ==143471== by 0x10908B: UnknownInlinedFun (lib2308.c:39) ==143471== by 0x10908B: main (first.c:178) ==143471== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==143471== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143471== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143471== by 0x4A58EC8: tsearch (tsearch.c:290) ==143471== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143471== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143471== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143471== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143471== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143471== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143471== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143471== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143471== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143471== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143471== by 0x497836B: setlocale (setlocale.c:337) ==143471== by 0x109045: main (first.c:157) ==143471== ==143471== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==143471== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143471== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143471== by 0x4A58EC8: tsearch (tsearch.c:290) ==143471== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143471== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143471== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143471== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143471== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143471== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143471== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143471== by 0x497836B: setlocale (setlocale.c:337) ==143471== by 0x109045: main (first.c:157) ==143471== ==143471== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==143471== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143471== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143471== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143471== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143471== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143471== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143471== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==143471== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143471== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143471== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143471== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143471== by 0x497836B: setlocale (setlocale.c:337) ==143471== by 0x109045: main (first.c:157) ==143471== ==143471== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==143471== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143471== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143471== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==143471== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==143471== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143471== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143471== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143471== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143471== by 0x497836B: setlocale (setlocale.c:337) ==143471== by 0x109045: main (first.c:157) ==143471== ==143471== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==143471== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==143471== by 0x48DC163: Curl_open (url.c:510) ==143471== by 0x487CCEF: curl_easy_init (easy.c:368) ==143471== by 0x10908B: UnknownInlinedFun (lib2308.c:45) ==143471== by 0x10908B: UnknownInlinedFun (lib2308.c:39) ==143471== by 0x10908B: main (first.c:178) ==143471== ==143471== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==143471== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143471== by 0x4A58EC8: __tsearch (tsearch.c:337) ==143471== by 0x4A58EC8: tsearch (tsearch.c:290) ==143471== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==143471== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143471== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143471== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143471== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143471== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143471== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143471== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143471== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143471== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143471== by 0x497836B: setlocale (setlocale.c:337) ==143471== by 0x109045: main (first.c:157) ==143471== ==143471== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==143471== at 0x4842788: malloc (vg_replace_malloc.c:446) ==143471== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==143471== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==143471== by 0x496C9A2: add_alias (gconv_conf.c:178) ==143471== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143471== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143471== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==143471== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143471== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143471== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==143471== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==143471== by 0x497836B: setlocale (setlocale.c:337) ==143471== by 0x109045: main (first.c:157) ==143471== === End of file valgrind2308 test 3004...[SMTP with 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/9/valgrind3004 ../src/curl -q --output log/9/curl3004.out --include --trace-ascii log/9/trace3004 --trace-time smtp://127.0.0.1:39915/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/9/stdout3004 2> log/9/stderr3004 3004: protocol FAILED! CMD (33792): ../libtool --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/valgrind3005 ../src/curl -q --output log/4/curl3005.out --include --trace-ascii log/4/trace3005 --trace-time smtp://127.0.0.1:35465/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/4/stdout3005 2> log/4/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/6/valgrind3006 ../src/curl -q --output log/6/curl3006.out --include --trace-ascii log/6/trace3006 --trace-time smtp://127.0.0.1:43801/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/6/stdout3006 2> log/6/stderr3006 CMD (33792): ../libtool --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/valgrind3007 ../src/curl -q --output log/3/curl3007.out --include --trace-ascii log/3/trace3007 --trace-time smtp://127.0.0.1:33405/3007 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-from sender@example.com -T - log/3/stdout3007 2> log/3/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/5/valgrind3008 ../src/curl -q --trace-ascii log/5/trace3008 --trace-time http://127.0.0.1:33519/this/is/the/3008 -O --output-dir /startdir/src/build-curl/tests/log/5 > log/5/stdout3008 2> log/5/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/7/valgrind3009 ../src/curl -q --trace-ascii log/7/trace3009 --trace-time http://127.0.0.1:35853/this/is/the/3009 -O --output-dir /startdir/src/build-curl/tests/not-there > log/7/stdout3009 2> log/7/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/8/valgrind3011 ../src/curl -q --trace-ascii log/8/trace3011 --trace-time http://127.0.0.1:33791/this/is/the/3011 -O --output-dir /startdir/src/build-curl/tests/log/8/tmp --create-dirs > log/8/stdout3011 2> log/8/stderr3011 CMD (33792): ../libtool --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/valgrind3012 ../src/curl -q --trace-ascii log/12/trace3012 --trace-time http://127.0.0.1:44175/this/is/the/3012 -OJR --output-dir /startdir/src/build-curl/tests/log/12 > log/12/stdout3012 2> log/12/stderr3012 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 3004 === Start of file server.cmd Testnum 3004 === End of file server.cmd === Start of file stdin-for-3004 From: different To: another body === End of file stdin-for-3004 === Start of file valgrind3004 ==143682== ==143682== Process terminating with default action of signal 4 (SIGILL) ==143682== Illegal opcode at address 0x10B06D ==143682== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143682== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3004 test 3005...[SMTP with multiple and 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/4/valgrind3005 ../src/curl -q --output log/4/curl3005.out --include --trace-ascii log/4/trace3005 --trace-time smtp://127.0.0.1:35465/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/4/stdout3005 2> log/4/stderr3005 3005: 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 3005 === Start of file server.cmd Testnum 3005 === End of file server.cmd === Start of file stdin-for-3005 From: different To: another body === End of file stdin-for-3005 === Start of file valgrind3005 ==143681== ==143681== Process terminating with default action of signal 4 (SIGILL) ==143681== Illegal opcode at address 0x10B06D ==143681== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143681== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3005 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/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind3006 ../src/curl -q --output log/6/curl3006.out --include --trace-ascii log/6/trace3006 --trace-time smtp://127.0.0.1:43801/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/6/stdout3006 2> log/6/stderr3006 3006: 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 3006 === Start of file server.cmd Testnum 3006 === End of file server.cmd === Start of file stdin-for-3006 From: different To: another body === End of file stdin-for-3006 === Start of file valgrind3006 ==143788== ==143788== Process terminating with default action of signal 4 (SIGILL) ==143788== Illegal opcode at address 0x10B06D ==143788== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143788== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3006 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/3/valgrind3007 ../src/curl -q --output log/3/curl3007.out --include --trace-ascii log/3/trace3007 --trace-time smtp://127.0.0.1:33405/3007 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-from sender@example.com -T - log/3/stdout3007 2> log/3/stderr3007 3007: 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 3007 === Start of file server.cmd Testnum 3007 === End of file server.cmd === Start of file stdin-for-3007 From: different To: another body === End of file stdin-for-3007 === Start of file valgrind3007 ==143815== ==143815== Process terminating with default action of signal 4 (SIGILL) ==143815== Illegal opcode at address 0x10B06D ==143815== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143815== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3007 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/5/valgrind3008 ../src/curl -q --trace-ascii log/5/trace3008 --trace-time http://127.0.0.1:33519/this/is/the/3008 -O --output-dir /startdir/src/build-curl/tests/log/5 > log/5/stdout3008 2> log/5/stderr3008 3008: 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 3008 === Start of file server.cmd Testnum 3008 === End of file server.cmd === Start of file valgrind3008 ==143892== ==143892== Process terminating with default action of signal 4 (SIGILL) ==143892== Illegal opcode at address 0x10B06D ==143892== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143892== by 0x10B06D: 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/7/valgrind3009 ../src/curl -q --trace-ascii log/7/trace3009 --trace-time http://127.0.0.1:35853/this/is/the/3009 -O --output-dir /startdir/src/build-curl/tests/not-there > log/7/stdout3009 2> log/7/stderr3009 3009: 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 3009 === Start of file server.cmd Testnum 3009 === End of file server.cmd === Start of file valgrind3009 ==143904== ==143904== Process terminating with default action of signal 4 (SIGILL) ==143904== Illegal opcode at address 0x10B06D ==143904== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==143904== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3009 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/8/valgrind3011 ../src/curl -q --trace-ascii log/8/trace3011 --trace-time http://127.0.0.1:33791/this/is/the/3011 -O --output-dir /startdir/src/build-curl/tests/log/8/tmp --create-dirs > log/8/stdout3011 2> log/8/stderr3011 3011: 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 3011 === Start of file server.cmd Testnum 3011 === End of file server.cmd === Start of file valgrind3011 ==144013== ==144013== Process terminating with default action of signal 4 (SIGILL) ==144013== Illegal opcode at address 0x10B06D ==144013== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144013== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3011 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/12/valgrind3012 ../src/curl -q --trace-ascii log/12/trace3012 --trace-time http://127.0.0.1:44175/this/is/the/3012 -OJR --output-dir /startdir/src/build-curl/tests/log/12 > log/12/stdout3012 2> log/12/stderr3012 3012: 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 3012 === Start of file server.cmd Testnum 3012 === 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/4/valgrind3015 ../src/curl -q --include --trace-ascii log/4/trace3015 --trace-time http://127.0.0.1:41947/3015 -w "%{num_headers}\n" -L -o/dev/null > log/4/stdout3015 2> log/4/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/11/valgrind2205 ../src/curl -q --output log/11/curl2205.out --include --trace log/11/trace2205 --trace-time mqtt://127.0.0.1:44699/2205 -K log/11/input2205 > log/11/stdout2205 2> log/11/stderr2205 CMD (33792): ../libtool --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/valgrind3013 ../src/curl -q --trace-ascii log/10/trace3013 --trace-time http://127.0.0.1:36145/this/is/the/3013 -O --output-dir /startdir/src/build-curl/tests/log/10 http://127.0.0.1:36145/another/3013 -o second3013 --output-dir /startdir/src/build-curl/tests/log/10 > log/10/stdout3013 2> log/10/stderr3013 server.cmd === Start of file valgrind3012 ==144093== ==144093== Process terminating with default action of signal 4 (SIGILL) ==144093== Illegal opcode at address 0x10B06D ==144093== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144093== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3012 startnew: server/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 143408 on PORT 44699 * pid mqtt => 143408 143408 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/11/valgrind2205 ../src/curl -q --output log/11/curl2205.out --include --trace log/11/trace2205 --trace-time mqtt://127.0.0.1:44699/2205 -K log/11/input2205 > log/11/stdout2205 2> log/11/stderr2205 curl returned 132, when expecting 8 2205: exit FAILED == Contents of files in the log/11/ dir after test 2205 === Start of file input2205 user = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:fakepasswd === End of file input2205 === Start of file mqtt_server.log 11:17:31.343615 Running IPv4 version 11:17:31.343668 Listening on port 44699 11:17:31.343695 Wrote pid 143408 to log/11/server/mqtt_server.pid 11:17:31.343719 Wrote port 44699 to log/11/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 2205 === End of file server.cmd === Start of file valgrind2205 ==144113== ==144113== Process terminating with default action of signal 4 (SIGILL) ==144113== Illegal opcode at address 0x10B06D ==144113== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144113== by 0x10B06D: main (tool_main.c:234) === End of file valgrind2205 CMD (33792): ../libtool --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/valgrind3014 ../src/curl -q --include --trace-ascii log/9/trace3014 --trace-time http://127.0.0.1:40247/1439 --write-out '%{num_headers}' > log/9/stdout3014 2> log/9/stderr3014 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/4/valgrind3015 ../src/curl -q --include --trace-ascii log/4/trace3015 --trace-time http://127.0.0.1:41947/3015 -w "%{num_headers}\n" -L -o/dev/null > log/4/stdout3015 2> log/4/stderr3015 3015: stdout FAILED: --- log/4/check-expected 2024-05-23 11:17:33.365226789 +0200 +++ log/4/check-generated 2024-05-23 11:17:33.365226789 +0200 @@ -1 +0,0 @@ -4[LF] == Contents of files in the log/4/ dir after test 3015 === Start of file check-expected 4[LF] === End of file check-expected === Start of file server.cmd Testnum 3015 === End of file server.cmd === Start of file valgrind3015 ==144175== ==144175== Process terminating with default action of signal 4 (SIGILL) ==144175== Illegal opcode at address 0x10B06D ==144175== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144175== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3015 CMD (33792): ../libtool --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/valgrind3016 ../src/curl -q --output log/6/curl3016.out --include --trace-ascii log/6/trace3016 --trace-time file:///startdir/src/build-curl/tests/ > log/6/stdout3016 2> log/6/stderr3016 CMD (33792): ../libtool --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/valgrind3019 ../src/curl -q --output log/7/curl3019.out --include --trace-ascii log/7/trace3019 --trace-time --resolve 35853:example.com:127.0.0.1 http://example.com:35853/3019 > log/7/stdout3019 2> log/7/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/1/valgrind3010 ./libtest/lib3010 127.0.0.1:39283/3010 > log/1/stdout3010 2> log/1/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/9/valgrind3014 ../src/curl -q --include --trace-ascii log/9/trace3014 --trace-time http://127.0.0.1:40247/1439 --write-out '%{num_headers}' > log/9/stdout3014 2> log/9/stderr3014 3014: stdout FAILED: --- log/9/check-expected 2024-05-23 11:17:33.371893593 +0200 +++ log/9/check-generated 2024-05-23 11:17:33.371893593 +0200 @@ -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/9/ 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 server.cmd Testnum 3014 === End of file server.cmd === Start of file valgrind3014 ==144122== ==144122== Process terminating with default action of signal 4 (SIGILL) ==144122== Illegal opcode at address 0x10B06D ==144122== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144122== by 0x10B06D: 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/10/valgrind3013 ../src/curl -q --trace-ascii log/10/trace3013 --trace-time http://127.0.0.1:36145/this/is/the/3013 -O --output-dir /startdir/src/build-curl/tests/log/10 http://127.0.0.1:36145/another/3013 -o second3013 --output-dir /startdir/src/build-curl/tests/log/10 > log/10/stdout3013 2> log/10/stderr3013 3013: 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 3013 === Start of file server.cmd Testnum 3013 === End of file server.cmd === Start of file valgrind3013 ==144120== ==144120== Process terminating with default action of signal 4 (SIGILL) ==144120== Illegal opcode at address 0x10B06D ==144120== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144120== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3013 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/6/valgrind3016 ../src/curl -q --output log/6/curl3016.out --include --trace-ascii log/6/trace3016 --trace-time file:///startdir/src/build-curl/tests/ > log/6/stdout3016 2> log/6/stderr3016 curl returned 132, when expecting 0 3016: exit FAILED == Contents of files in the log/6/ dir after test 3016 === Start of file server.cmd Testnum 3016 === End of file server.cmd === Start of file valgrind3016 ==144345== ==144345== Process terminating with default action of signal 4 (SIGILL) ==144345== Illegal opcode at address 0x10B06D ==144345== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144345== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3016 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/7/valgrind3019 ../src/curl -q --output log/7/curl3019.out --include --trace-ascii log/7/trace3019 --trace-time --resolve 35853:example.com:127.0.0.1 http://example.com:35853/3019 > log/7/stdout3019 2> log/7/stderr3019 curl returned 132, when expecting 49 3019: exit FAILED == Contents of files in the log/7/ dir after test 3019 === Start of file server.cmd Testnum 3019 === End of file server.cmd === Start of file valgrind3019 ==144354== ==144354== Process terminating with default action of signal 4 (SIGILL) ==144354== Illegal opcode at address 0x10B06D ==144354== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144354== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3019 CMD (33792): ../libtool --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/valgrind3020 ../src/curl -q --output log/8/curl3020.out --include --trace-ascii log/8/trace3020 --trace-time --connect-to ::example.com:example.com http://example.com:33791/3020 > log/8/stdout3020 2> log/8/stderr3020 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/1/valgrind3010 ./libtest/lib3010 127.0.0.1:39283/3010 > log/1/stdout3010 2> log/1/stderr3010 3010: stdout FAILED: --- log/1/check-expected 2024-05-23 11:17:33.565230898 +0200 +++ log/1/check-generated 2024-05-23 11:17:33.565230898 +0200 @@ -1,2 +0,0 @@ -Retry-After 2[LF] -Retry-After 0[LF] == Contents of files in the log/1/ 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 server.cmd Testnum 3010 === End of file server.cmd === Start of file stderr3010 URL: 127.0.0.1:39283/3010 === End of file stderr3010 === Start of file valgrind3010 ==144000== ==144000== Process terminating with default action of signal 4 (SIGILL) ==144000== Illegal opcode at address 0x48DC18B ==144000== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==144000== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==144000== by 0x48DC18B: Curl_open (url.c:519) ==144000== by 0x487CCEF: curl_easy_init (easy.c:368) ==144000== by 0x10909C: UnknownInlinedFun (lib3010.c:36) ==144000== by 0x10909C: main (first.c:178) ==144000== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==144000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144000== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144000== by 0x4A58EC8: tsearch (tsearch.c:290) ==144000== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144000== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144000== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144000== by 0x497836B: setlocale (setlocale.c:337) ==144000== by 0x109058: main (first.c:157) ==144000== ==144000== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==144000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144000== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144000== by 0x4A58EC8: tsearch (tsearch.c:290) ==144000== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144000== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144000== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144000== by 0x497836B: setlocale (setlocale.c:337) ==144000== by 0x109058: main (first.c:157) ==144000== ==144000== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==144000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144000== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144000== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144000== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144000== by 0x497836B: setlocale (setlocale.c:337) ==144000== by 0x109058: main (first.c:157) ==144000== ==144000== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==144000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144000== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144000== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144000== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144000== by 0x497836B: setlocale (setlocale.c:337) ==144000== by 0x109058: main (first.c:157) ==144000== ==144000== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==144000== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==144000== by 0x48DC163: Curl_open (url.c:510) ==144000== by 0x487CCEF: curl_easy_init (easy.c:368) ==144000== by 0x10909C: UnknownInlinedFun (lib3010.c:36) ==144000== by 0x10909C: main (first.c:178) ==144000== ==144000== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==144000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144000== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144000== by 0x4A58EC8: tsearch (tsearch.c:290) ==144000== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144000== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144000== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144000== by 0x497836B: setlocale (setlocale.c:337) ==144000== by 0x109058: main (first.c:157) ==144000== ==144000== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==144000== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144000== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144000== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144000== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144000== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144000== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144000== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144000== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144000== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144000== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144000== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144000== by 0x497836B: setlocale (setlocale.c:337) ==144000== by 0x109058: main (first.c:157) ==144000== === End of file valgrind3010 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/8/valgrind3020 ../src/curl -q --output log/8/curl3020.out --include --trace-ascii log/8/trace3020 --trace-time --connect-to ::example.com:example.com http://example.com:33791/3020 > log/8/stdout3020 2> log/8/stderr3020 curl returned 132, when expecting 49 3020: exit FAILED == Contents of files in the log/8/ dir after test 3020 === Start of file server.cmd Testnum 3020 === End of file server.cmd === Start of file valgrind3020 ==144443== ==144443== Process terminating with default action of signal 4 (SIGILL) ==144443== Illegal opcode at address 0x10B06D ==144443== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144443== by 0x10B06D:CMD (33792): ../libtool --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-time -D log/10/heads3029 http://127.0.0.1:36145/3029 http://127.0.0.1:36145/3029 --next -D log/10/heads3029 http://127.0.0.1:36145/3029 > log/10/stdout3029 2> log/10/stderr3029 main (tool_main.c:234) === End of file valgrind3020 CMD (33792): ../libtool --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/valgrind3028 ../src/curl -q --output log/9/curl3028.out --include --trace-ascii log/9/trace3028 --trace-time --haproxy-protocol http://127.0.0.1:40247/page --proxytunnel -x 127.0.0.1:44975 > log/9/stdout3028 2> log/9/stderr3028 CMD (33792): ../libtool --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/valgrind3026 ./libtest/lib3026 none > log/11/stdout3026 2> log/11/stderr3026 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-time -D log/10/heads3029 http://127.0.0.1:36145/3029 http://127.0.0.1:36145/3029 --next -D log/10/heads3029 http://127.0.0.1:36145/3029 > log/10/stdout3029 2> log/10/stderr3029 3029: data FAILED: --- log/10/check-expected 2024-05-23 11:17:33.881904070 +0200 +++ log/10/check-generated 2024-05-23 11:17:33.881904070 +0200 @@ -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 server.cmd Testnum 3029 === End of file server.cmd === Start of file valgrind3029 ==144542== ==144542== Process terminating with default action of signal 4 (SIGILL) ==144542== Illegal opcode at address 0x10B06D ==144542== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144542== by 0x10B06D: 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/9/valgrind3028 ../src/curl -q --output log/9/curl3028.out --include --trace-ascii log/9/trace3028 --trace-time --haproxy-protocol http://127.0.0.1:40247/page --proxytunnel -x 127.0.0.1:44975 > log/9/stdout3028 2> log/9/stderr3028 3028: 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 3028 === Start of file server.cmd Testnum 3028 === End of file server.cmd === Start of file valgrind3028 ==144561== ==144561== Process terminating with default action of signal 4 (SIGILL) ==144561== Illegal opcode at address 0x10B06D ==144561== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144561== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3028 * 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/11/valgrind3026 ./libtest/lib3026 none > log/11/stdout3026 2> log/11/stderr3026 lib3026 returned 132, when expecting 0 3026: exit FAILED == Contents of files in the log/11/ dir after test 3026 === Start of file server.cmd Testnum 3026 === End of file server.cmd === Start of file stderr3026 URL: none === End of file stderr3026 === Start of file valgrind3026 ==144532== ==144532== Process terminating with default action of signal 4 (SIGILL) ==144532== Illegal opcode at address 0x490F48E ==144532== at 0x490F48E: formatf.constprop.3 (mprintf.c:795) ==144532== by 0x48B28BA: curl_mvsnprintf (mprintf.c:1061) ==144532== by 0x48B299B: curl_msnprintf (mprintf.c:1081) ==144532== by 0x48E381C: UnknownInlinedFun (version.c:96) ==144532== by 0x48E381C: curl_version_info (version.c:630) ==144532== by 0x109076: UnknownInlinedFun (lib3026.c:135) ==144532== by 0x109076: main (first.c:178) ==144532== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==144532== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144532== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144532== by 0x4A58EC8: tsearch (tsearch.c:290) ==144532== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144532== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144532== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144532== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144532== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144532== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144532== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144532== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144532== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144532== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144532== by 0x497836B: setlocale (setlocale.c:337) ==144532== by 0x109047: main (first.c:157) ==144532== ==144532== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==144532== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144532== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144532== by 0x4A58EC8: tsearch (tsearch.c:290) ==144532== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144532== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144532== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144532== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144532== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144532== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144532== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144532== by 0x497836B: setlocale (setlocale.c:337) ==144532== by 0x109047: main (first.c:157) ==144532== ==144532== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==144532== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144532== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144532== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144532== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144532== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144532== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144532== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144532== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144532== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144532== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144532== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144532== by 0x497836B: setlocale (setlocale.c:337) ==144532== by 0x109047: main (first.c:157) ==144532== ==144532== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==144532== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144532== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144532== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144532== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144532== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144532== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144532== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144532== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144532== by 0x497836B: setlocale (setlocale.c:337) ==144532== by 0x109047: main (first.c:157) ==144532== ==144532== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==144532== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144532== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144532== by 0x4A58EC8: tsearch (tsearch.c:290) ==144532== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144532== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144532== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144532== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144532== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144532== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144532== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144532== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144532== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144532== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144532== by 0x497836B: setlocale (setlocale.c:337) ==144532== by 0x109047: main (first.c:157) ==144532== ==144532==CMD (33792): ../libtool --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/valgrind3030 ../src/curl -q --output log/6/curl3030.out --include --trace-ascii log/6/trace3030 --trace-time -D log/6/heads3030 http://127.0.0.1:42657/3030 http://127.0.0.1:42657/3030 > log/6/stdout3030 2> log/6/stderr3030 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==144532== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144532== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144532== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144532== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144532== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144532== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144532== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144532== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144532== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144532== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144532== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144532== by 0x497836B: setlocale (setlocale.c:337) ==144532== by 0x109047: main (first.c:157) ==144532== === End of file valgrind3026 CMD (33792): ../libtool --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/valgrind3025 ./libtest/lib3025 http://127.0.0.1:44175/3025 > log/12/stdout3025 2> log/12/stderr3025 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/6/valgrind3030 ../src/curl -q --output log/6/curl3030.out --include --trace-ascii log/6/trace3030 --trace-time -D log/6/heads3030 http://127.0.0.1:42657/3030 http://127.0.0.1:42657/3030 > log/6/stdout3030 2> log/6/stderr3030 3030: data FAILED: --- log/6/check-expected 2024-05-23 11:17:34.001906536 +0200 +++ log/6/check-generated 2024-05-23 11:17:33.998573134 +0200 @@ -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/6/ 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 server.cmd Testnum 3030 === End of file server.cmd === Start of file valgrind3030 ==144737== ==144737== Process terminating with default action of signal 4 (SIGILL) ==144737== Illegal opcode at address 0x10B06D ==144737== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144737== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3030 CMD (33792): ../libtool --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/valgrind3027 ./libtest/lib3027 ftp://127.0.0.1:36137/3027 > log/4/stdout3027 2> log/4/stderr3027 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/12/valgrind3025 ./libtest/lib3025 http://127.0.0.1:44175/3025 > log/12/stdout3025 2> log/12/stderr3025 3025: data FAILED: --- log/12/check-expected 2024-05-23 11:17:34.198577244 +0200 +++ log/12/check-generated 2024-05-23 11:17:34.198577244 +0200 @@ -1,4 +0,0 @@ -ICY 200 OK[LF] -Content-Length: 7[LF] -[LF] -MooMoo[LF] == Contents of files in the log/12/ 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 server.cmd Testnum 3025 === End of file server.cmd === Start of file stderr3025 URL: http://127.0.0.1:44175/3025 === End of file stderr3025 === Start of file valgrind3025 ==144492== ==144492== Process terminating with default action of signal 4 (SIGILL) ==144492== Illegal opcode at address 0x48DC18B ==144492== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==144492== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==144492== by 0x48DC18B: Curl_open (url.c:519) ==144492== by 0x487CCEF: curl_easy_init (easy.c:368) ==144492== by 0x10908F: UnknownInlinedFun (lib3025.c:39) ==144492== by 0x10908F: main (first.c:178) ==144492== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==144492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144492== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144492== by 0x4A58EC8: tsearch (tsearch.c:290) ==144492== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144492== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144492== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144492== by 0x497836B: setlocale (setlocale.c:337) ==144492== by 0x10904B: main (first.c:157) ==144492== ==144492== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==144492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144492== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144492== by 0x4A58EC8: tsearch (tsearch.c:290) ==144492== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144492== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144492== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144492== by 0x497836B: setlocale (setlocale.c:337) ==144492== by 0x10904B: main (first.c:157) ==144492== ==144492== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==144492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144492== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144492== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144492== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144492== by 0x497836B: setlocale (setlocale.c:337) ==144492== by 0x10904B: main (first.c:157) ==144492== ==144492== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==144492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144492== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144492== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144492== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144492== by 0x497836B: setlocale (setlocale.c:337) ==144492== by 0x10904B: main (first.c:157) ==144492== ==144492== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==144492== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==144492== by 0x48DC163: Curl_open (url.c:510) ==144492== by 0x487CCEF: curl_easy_init (easy.c:368) ==144492== by 0x10908F: UnknownInlinedFun (lib3025.c:39) ==144492== by 0x10908F: main (first.c:178) ==144492== ==144492== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==144492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144492== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144492== by 0x4A58EC8: tsearch (tsearch.c:290) ==144492== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144492== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144492== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144492== by 0x497836B: setlocale (setlocale.c:337) ==144492== by 0x10904B: main (first.c:157) ==144492== ==144492== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==144492== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144492== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144492== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144492== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144492== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144492== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144492== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144492== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144492== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144492== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144492== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144492== by 0x497836B: setlocale (setlocale.c:337) ==144492== by 0x10904B: main (first.c:157) ==144492== === End of file valgrind3025 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/4/valgrind3027 ./libtest/lib3027 ftp://127.0.0.1:36137/3027 > log/4/stdout3027 2> log/4/stderr3027 3027: 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 3027 === Start of file server.cmd REPLY MDTM 550 Permission denied Testnum 3027 === End of file server.cmd === Start of file stderr3027 URL: ftp://127.0.0.1:36137/3027 === End of file stderr3027 === Start of file valgrind3027 ==144529== ==144529== Process terminating with default action of signal 4 (SIGILL) CMD (33792): ../libtool --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/valgrind3202 ../src/curl -q --output log/9/curl3202.out --include --trace-ascii log/9/trace3202 --trace-time -g "http://[::1]:40831/3202" --haproxy-clientip "2001:db8::" > log/9/stdout3202 2> log/9/stderr3202 CMD (33792): ../libtool --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/valgrind3201 ../src/curl -q --output log/10/curl3201.out --include --trace-ascii log/10/trace3201 --trace-time http://127.0.0.1:36145/3201 --haproxy-clientip "192.168.1.1" -H "Testno: 3201" > log/10/stdout3201 2> log/10/stderr3201 ==144529== Illegal opcode at address 0x48DC18B ==144529== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==144529== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==144529== by 0x48DC18B: Curl_open (url.c:519) ==144529== by 0x487CCEF: curl_easy_init (easy.c:368) ==144529== by 0x1090AB: UnknownInlinedFun (lib3027.c:38) ==144529== by 0x1090AB: main (first.c:178) ==144529== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==144529== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144529== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144529== by 0x4A58EC8: tsearch (tsearch.c:290) ==144529== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144529== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144529== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144529== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144529== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144529== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144529== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144529== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144529== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144529== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144529== by 0x497836B: setlocale (setlocale.c:337) ==144529== by 0x109056: main (first.c:157) ==144529== ==144529== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==144529== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144529== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144529== by 0x4A58EC8: tsearch (tsearch.c:290) ==144529== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144529== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144529== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144529== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144529== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144529== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144529== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144529== by 0x497836B: setlocale (setlocale.c:337) ==144529== by 0x109056: main (first.c:157) ==144529== ==144529== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==144529== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144529== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144529== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144529== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144529== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144529== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144529== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144529== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144529== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144529== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144529== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144529== by 0x497836B: setlocale (setlocale.c:337) ==144529== by 0x109056: main (first.c:157) ==144529== ==144529== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==144529== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144529== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144529== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144529== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144529== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144529== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144529== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144529== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144529== by 0x497836B: setlocale (setlocale.c:337) ==144529== by 0x109056: main (first.c:157) ==144529== ==144529== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==144529== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==144529== by 0x48DC163: Curl_open (url.c:510) ==144529== by 0x487CCEF: curl_easy_init (easy.c:368) ==144529== by 0x1090AB: UnknownInlinedFun (lib3027.c:38) ==144529== by 0x1090AB: main (first.c:178) ==144529== ==144529== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==144529== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144529== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144529== by 0x4A58EC8: tsearch (tsearch.c:290) ==144529== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144529== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144529== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144529== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144529== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144529== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144529== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144529== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144529== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144529== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144529== by 0x497836B: setlocale (setlocale.c:337) ==144529== by 0x109056: main (first.c:157) ==144529== ==144529== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==144529== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144529== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144529== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144529== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144529== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144529== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144529== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144529== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144529== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144529== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144529== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144529== by 0x497836B: setlocale (setlocale.c:337) ==144529== by 0x109056: main (first.c:157) ==144529== === End of file valgrind3027 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/9/valgrind3202 ../src/curl -q --output log/9/curl3202.out --include --trace-ascii log/9/trace3202 --trace-time -g "http://[::1]:40831/3202" --haproxy-clientip "2001:db8::" > log/9/stdout3202 2> log/9/stderr3202 3202: 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 3202 === Start of file server.cmd Testnum 3202 === End of file server.cmd === Start of file valgrind3202 ==144916== ==144916== Process terminating with default action of signal 4 (SIGILL) ==144916== Illegal opcode at address 0x10B06D ==144916== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144916== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3202 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/10/valgrind3201 ../src/curl -q --output log/10/curl3201.out --include --trace-ascii log/10/trace3201 --trace-time http://127.0.0.1:36145/3201 --haproxy-clientip "192.168.1.1" -H "Testno: 3201" > log/10/stdout3201 2> log/10/stderr3201 3201: 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 3201 === Start of file server.cmd Testnum 3201 === End of file server.cmd === Start of file valgrind3201 ==144888== CMD (33792): ../libtool --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/valgrind3101 ./libtest/lib3101 http://127.0.0.1:39283/3101 > log/1/stdout3101 2> log/1/stderr3101 CMD (33792): ../libtool --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/valgrind3018 ../src/curl -q --output log/5/curl3018.out --include --trace log/5/trace3018 --trace-time mqtt://127.0.0.1:46723/3018 --max-filesize 11 > log/5/stdout3018 2> log/5/stderr3018 ==144888== Process terminating with default action of signal 4 (SIGILL) ==144888== Illegal opcode at address 0x10B06D ==144888== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144888== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3201 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/1/valgrind3101 ./libtest/lib3101 http://127.0.0.1:39283/3101 > log/1/stdout3101 2> log/1/stderr3101 3101: 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 3101 === Start of file server.cmd Testnum 3101 === End of file server.cmd === Start of file stderr3101 URL: http://127.0.0.1:39283/3101 === End of file stderr3101 === Start of file valgrind3101 ==144789== ==144789== Process terminating with default action of signal 4 (SIGILL) ==144789== Illegal opcode at address 0x48DC18B ==144789== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==144789== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==144789== by 0x48DC18B: Curl_open (url.c:519) ==144789== by 0x487CCEF: curl_easy_init (easy.c:368) ==144789== by 0x10908E: UnknownInlinedFun (lib3101.c:37) ==144789== by 0x10908E: main (first.c:178) ==144789== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==144789== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144789== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144789== by 0x4A58EC8: tsearch (tsearch.c:290) ==144789== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144789== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144789== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144789== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144789== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144789== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144789== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144789== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144789== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144789== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144789== by 0x497836B: setlocale (setlocale.c:337) ==144789== by 0x10904B: main (first.c:157) ==144789== ==144789== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==144789== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144789== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144789== by 0x4A58EC8: tsearch (tsearch.c:290) ==144789== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144789== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144789== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144789== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144789== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144789== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144789== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144789== by 0x497836B: setlocale (setlocale.c:337) ==144789== by 0x10904B: main (first.c:157) ==144789== ==144789== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==144789== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144789== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144789== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144789== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144789== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144789== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144789== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144789== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144789== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144789== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144789== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144789== by 0x497836B: setlocale (setlocale.c:337) ==144789== by 0x10904B: main (first.c:157) ==144789== ==144789== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==144789== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144789== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144789== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144789== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144789== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144789== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144789== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144789== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144789== by 0x497836B: setlocale (setlocale.c:337) ==144789== by 0x10904B: main (first.c:157) ==144789== ==144789== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==144789== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==144789== by 0x48DC163: Curl_open (url.c:510) ==144789== by 0x487CCEF: curl_easy_init (easy.c:368) ==144789== by 0x10908E: UnknownInlinedFun (lib3101.c:37) ==144789== by 0x10908E: main (first.c:178) ==144789== ==144789== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==144789== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144789== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144789== by 0x4A58EC8: tsearch (tsearch.c:290) ==144789== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144789== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144789== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144789== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144789== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144789== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144789== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144789== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144789== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144789== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144789== by 0x497836B: setlocale (setlocale.c:337) ==144789== by 0x10904B: main (first.c:157) ==144789== ==144789== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==144789== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144789== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144789== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144789== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144789== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144789== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144789== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144789== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144789== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144789== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144789== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144789== by 0x497836B: setlocale (setlocale.c:337) ==144789== by 0x10904B: main (first.c:157) ==144789== === End of file valgrind3101 startnew: server/mqttd --port 0 --pidfile log/5/server/mqtt_server.pid --portfile log/5/server/mqtt_server.port --config log/5/server.cmd --logfile log/5/mqtt_server.log --logdir log/5 RUN: MQTT server is now running PID 144343 on PORT 46723 * pid mqtt => 144343 144343 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/5/valgrind3018 ../src/curl -q --output log/5/curl3018.out --include --trace log/5/trace3018 --trace-time mqtt://127.0.0.1:46723/3018 --max-filesize 11 > log/5/stdout3018 2> log/5/stderr3018 3018: protocol FAILED! There was no content 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/11/valgrind3203 ../src/curl -q --trace-ascii log/11/trace3203 --trace-time file://localhost/startdir/src/build-curl/tests/log/11/test3203.dir/ > log/11/stdout3203 2> log/11/stderr3203 t 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 3018 === Start of file mqtt_server.log 11:17:33.531473 Running IPv4 version 11:17:33.531525 Listening on port 46723 11:17:33.531548 Wrote pid 144343 to log/5/server/mqtt_server.pid 11:17:33.531570 Wrote port 46723 to log/5/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 3018 === End of file server.cmd === Start of file valgrind3018 ==145043== ==145043== Process terminating with default action of signal 4 (SIGILL) ==145043== Illegal opcode at address 0x10B06D ==145043== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==145043== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3018 CMD (33792): ../libtool --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/valgrind3017 ../src/curl -q --output log/3/curl3017.out --include --trace log/3/trace3017 --trace-time mqtt://127.0.0.1:37121/3017 -m 3 > log/3/stdout3017 2> log/3/stderr3017 CMD (33792): ../libtool --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/valgrind3204 ../src/curl -q --output log/6/curl3204.out --include --trace-ascii log/6/trace3204 --trace-time http://127.0.0.1:42657/3204 --etag-compare log/6/etag3204 --etag-save log/6/etag3204 > log/6/stdout3204 2> log/6/stderr3204 CMD (0): ../src/curl --max-time 13 --output log/7/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:46683/verifiedserver" 2>log/7/rtsp_verify.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/8/valgrind3103 ./libtest/lib3103 http://127.0.0.1:33791/3103 > log/8/stdout3103 2> log/8/stderr3103 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/11/valgrind3203 ../src/curl -q --trace-ascii log/11/trace3203 --trace-time file://localhost/startdir/src/build-curl/tests/log/11/test3203.dir/ > log/11/stdout3203 2> log/11/stderr3203 3203: stdout FAILED: --- log/11/check-expected 2024-05-23 11:17:34.481916398 +0200 +++ log/11/check-generated 2024-05-23 11:17:34.481916398 +0200 @@ -1 +0,0 @@ -dir-listing-test.txt[LF] == Contents of files in the log/11/ dir after test 3203 === Start of file check-expected dir-listing-test.txt[LF] === End of file check-expected === Start of file server.cmd Testnum 3203 === End of file server.cmd === Start of file valgrind3203 ==144986== ==144986== Process terminating with default action of signal 4 (SIGILL) ==144986== Illegal opcode at address 0x10B06D ==144986== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==144986== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3203 startnew: server/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 144342 on PORT 37121 * pid mqtt => 144342 144342 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/3/valgrind3017 ../src/curl -q --output log/3/curl3017.out --include --trace log/3/trace3017 --trace-time mqtt://127.0.0.1:37121/3017 -m 3 > log/3/stdout3017 2> log/3/stderr3017 3017: 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 3017 === Start of file mqtt_server.log 11:17:33.528500 Running IPv4 version 11:17:33.528558 Listening on port 37121 11:17:33.528582 Wrote pid 144342 to log/3/server/mqtt_server.pid 11:17:33.528604 Wrote port 37121 to log/3/server/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 ==145039== ==145039== Process terminating with default action of signal 4 (SIGILL) ==145039== Illegal opcode at address 0x10B06D ==145039== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==145039== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3017 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/6/valgrind3204 ../src/curl -q --output log/6/curl3204.out --include --trace-ascii log/6/trace3204 --trace-time http://127.0.0.1:42657/3204 --etag-compare log/6/etag3204 --etag-save log/6/etag3204 > log/6/stdout3204 2> log/6/stderr3204 3204: 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 3204 === Start of file etag3204 "21025-dc7-39462498" === End of file etag3204 === Start of file server.cmd Testnum 3204 === End of file server.cmd === Start of file valgrind3204 ==145035== ==145035== Process terminating with default action of signal 4 (SIGILL) ==145035== Illegal opcode at address 0x10B06D ==145035== at 0x10B06D: UnknownInlinedFun (string_fortified.h:59) ==145035== by 0x10B06D: main (tool_main.c:234) === End of file valgrind3204 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/8/valgrind3103 ./libtest/lib3103 http://127.0.0.1:33791/3103 > log/8/stdout3103 2> log/8/stderr3103 3103: 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 3103 === Start of file server.cmd Testnum 3103 === End of file server.cmd === Start of file stderr3103 URL: http://127.0.0.1:33791/3103 === End of file stderr3103 === Start of file valgrind3103 ==144836== ==144836== Process terminating with default action of signal 4 (SIGILL) ==144836== Illegal opcode at address 0x48DC18B ==144836== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==144836== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==144836== by 0x48DC18B: Curl_open (url.c:519) ==144836== by 0x487CCEF: curl_easy_init (easy.c:368) ==144836== by 0x1090A7: UnknownInlinedFun (lib3103.c:39) ==144836== by 0x1090A7: main (first.c:178) ==144836== 408 bytes in 17 blocks are possibly lost in loss record 601 of 652 ==144836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144836== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144836== by 0x4A58EC8: tsearch (tsearch.c:290) ==144836== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144836== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144836== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144836== by 0x497836B: setlocale (setlocale.c:337) ==144836== by 0x10904E: main (first.c:157) ==144836== ==144836== 552 bytes in 23 blocks are possibly lost in loss record 607 of 652 ==144836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144836== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144836== by 0x4A58EC8: tsearch (tsearch.c:290) ==144836== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144836== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144836== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144836== by 0x497836B: setlocale (setlocale.c:337) ==144836== by 0x10904E: main (first.c:157) ==144836== ==144836== 681 bytes in 17 blocks are possibly lost in loss record 613 of 652 ==144836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144836== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144836== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==144836== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==144836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144836== by 0x497836B: setlocale (setlocale.c:337) ==144836== by 0x10904E: main (first.c:157) ==144836== ==144836== 1,018 bytes in 23 blocks are possibly lost in loss record 627 of 652 ==144836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144836== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144836== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==144836== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==144836== by 0x49DC34A: _CMD (33792): ../libtool --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/valgrind3100 ./libtest/lib3100 rtsp://127.0.0.1:46683/3100 > log/7/stdout3100 2> log/7/stderr3100 _pthread_once_slow.isra.0 (pthread_once.c:116) ==144836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144836== by 0x497836B: setlocale (setlocale.c:337) ==144836== by 0x10904E: main (first.c:157) ==144836== ==144836== 5,288 bytes in 1 blocks are definitely lost in loss record 646 of 652 ==144836== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==144836== by 0x48DC163: Curl_open (url.c:510) ==144836== by 0x487CCEF: curl_easy_init (easy.c:368) ==144836== by 0x1090A7: UnknownInlinedFun (lib3103.c:39) ==144836== by 0x1090A7: main (first.c:178) ==144836== ==144836== 11,664 bytes in 486 blocks are possibly lost in loss record 649 of 652 ==144836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144836== by 0x4A58EC8: __tsearch (tsearch.c:337) ==144836== by 0x4A58EC8: tsearch (tsearch.c:290) ==144836== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==144836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144836== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144836== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144836== by 0x497836B: setlocale (setlocale.c:337) ==144836== by 0x10904E: main (first.c:157) ==144836== ==144836== 18,800 bytes in 486 blocks are possibly lost in loss record 651 of 652 ==144836== at 0x4842788: malloc (vg_replace_malloc.c:446) ==144836== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==144836== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==144836== by 0x496C9A2: add_alias (gconv_conf.c:178) ==144836== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==144836== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==144836== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==144836== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==144836== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==144836== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==144836== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==144836== by 0x497836B: setlocale (setlocale.c:337) ==144836== by 0x10904E: main (first.c:157) ==144836== === End of file valgrind3103 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/7/server/rtsp_server.pid" --portfile "log/7/server/rtsp_server.port" --logfile "log/7/rtsp_server.log" --logdir "log/7" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: ../src/curl --max-time 13 --output log/7/rtsp_verify.out --silent --verbose --globoff "http://127.0.0.1:46683/verifiedserver" 2>log/7/rtsp_verify.log RUN: RTSP server PID 144738 port 46683 * pid rtsp => 144738 144738 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/7/valgrind3100 ./libtest/lib3100 rtsp://127.0.0.1:46683/3100 > log/7/stdout3100 2> log/7/stderr3100 3100: 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 3100 === Start of file rtsp_server.log 11:17:33.076217 Running IPv4 version on port 46683 11:17:33.076303 Wrote pid 144738 to log/7/server/rtsp_server.pid 11:17:33.076321 Wrote port 46683 to log/7/server/rtsp_server.port 11:17:34.077855 ====> Client connect 11:17:34.077872 Read 92 bytes 11:17:34.077878 ProcessRequest() called with testno -7 and line [GET /verifiedserver HTTP/1.1 Host: 127.0.0.1:46683 User-Agent: curl/8.8.0 Accept: */* ] 11:17:34.077890 Got request: GET /verifiedserver HTTP/1.1 11:17:34.077896 Are-we-friendly question received 11:17:34.077909 Wrote request (92 bytes) input to log/7/server.input 11:17:34.077922 Send response number -2 part 0 11:17:34.077927 Identifying ourselves as friends 11:17:34.077949 Sent off 69 bytes 11:17:34.077958 Response sent (69 bytes) and written to log/7/server.response 11:17:34.077963 special request received, no persistency 11:17:34.077968 ====> Client disconnect === End of file rtsp_server.log === Start of file rtsp_verify.log * Trying 127.0.0.1:46683... * Connected to 127.0.0.1 (127.0.0.1) port 46683 > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46683 > User-Agent: curl/8.8.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 30 < { [30 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file rtsp_verify.log === Start of file rtsp_verify.out RTSP_SERVER WE ROOLZ: 144738 === End of file rtsp_verify.out === Start of file server.cmd Testnum 3100 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 30 RTSP_SERVER WE ROOLZ: 144738 === End of file server.response === Start of file stderr3100 URL: rtsp://127.0.0.1:46683/3100 === End of file stderr3100 === Start of file valgrind3100 ==145218== ==145218== Process terminating with default action of signal 4 (SIGILL) ==145218== Illegal opcode at address 0x48DC18B ==145218== at 0x48DC18B: UnknownInlinedFun (string_fortified.h:59) ==145218== by 0x48DC18B: UnknownInlinedFun (request.c:45) ==145218== by 0x48DC18B: Curl_open (url.c:519) ==145218== by 0x487CCEF: curl_easy_init (easy.c:368) ==145218== by 0x10908E: UnknownInlinedFun (lib3100.c:37) ==145218== by 0x10908E: main (first.c:178) ==145218== 408 bytes in 17 blocks are possibly lost in loss record 600 of 650 ==145218== at 0x4842788: malloc (vg_replace_malloc.c:446) ==145218== by 0x4A58EC8: __tsearch (tsearch.c:337) ==145218== by 0x4A58EC8: tsearch (tsearch.c:290) ==145218== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==145218== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==145218== by 0x496C9A2: add_alias (gconv_conf.c:178) ==145218== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==145218== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==145218== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==145218== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==145218== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==145218== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==145218== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==145218== by 0x497836B: setlocale (setlocale.c:337) ==145218== by 0x10904B: main (first.c:157) ==145218== ==145218== 552 bytes in 23 blocks are possibly lost in loss record 605 of 650 ==145218== at 0x4842788: malloc (vg_replace_malloc.c:446) ==145218== by 0x4A58EC8: __tsearch (tsearch.c:337) ==145218== by 0x4A58EC8: tsearch (tsearch.c:290) ==145218== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==145218== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==145218== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==145218== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==145218== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==145218== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==145218== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==145218== by 0x497836B: setlocale (setlocale.c:337) ==145218== by 0x10904B: main (first.c:157) ==145218== ==145218== 681 bytes in 17 blocks are possibly lost in loss record 611 of 650 ==145218== at 0x4842788: malloc (vg_replace_malloc.c:446) ==145218== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==145218== by 0x496C9A2: add_alias2 (gconv_conf.c:176) * kill pid for ftp-ctrl => 92039 * kill pid for ftp-ctrl => 80142 * kill pid for ftp-ctrl => 80060 * kill pid for ftp-ctrl => 80036 * kill pid for ftp-ctrl => 80131 * kill pid for ftp-ctrl => 138448 * kill pid for ftp-ipv6-ctrl => 117491 * kill pid for ftp-ctrl => 80130 * kill pid for ftp-ipv6-ctrl => 87774 * kill pid for ftp-ctrl => 80138 * kill pid for imap-filt => 106283 * kill pid for imap-filt => 106287 * kill pid for imap-filt => 103582 * kill pid for ftp-ipv6-ctrl => 87757 * kill pid for imap-filt => 102148 * kill pid for pop3-filt => 108692 * kill pid for pop3-filt => 108697 * kill pid for pop3-filt => 108689 * kill pid for ftp-ipv6-ctrl => 87788 * kill pid for pop3-filt => 108690 * kill pid for imap-filt => 106316 * kill pid for smtp-filt => 111262 * kill pid for smtp-filt => 111042 * kill pid for imap-filt => 106324 * kill pid for smtp-filt => 111269 * kill pid for pop3-filt => 108703 * kill pid for ftp-ctrl => 80139 * kill pid for pop3-filt => 108701 * kill pid for smtp-filt => 111108 * kill pid for smtp-filt => 102152 RUN: Process with pid 75084 signalled to die RUN: Process with pid 80128 signalled to die * kill pid for ftp-ipv6-ctrl => 117496 RUN: Process with pid 91086 signalled to die RUN: Process with pid 104251 signalled to die RUN: Process with pid 100291 signalled to die RUN: Process with pid 106286 signalled to die RUN: Process with pid 104177 signalled to die RUN: Process with pid 108696 signalled to die RUN: Process with pid 104793 signalled to die RUN: Process with pid 111007 signalled to die RUN: Process with pid 106279 signalled to die RUN: Process with pid 117409 signalled to die RUN: Process with pid 108687 signalled to die RUN: Process with pid 119016 signalled to die RUN: Process with pid 111216 signalled to die RUN: Process with pid 123873 signalled to die RUN: Process with pid 117356 signalled to die RUN: Process with pid 132591 signalled to die RUN: Process with pid 75079 signalled to die RUN: Process with pid 123879 signalled to die RUN: Process with pid 138442 signalled to die RUN: Process with pid 79905 signalled to die RUN: Process with pid 87770 signalled to die * kill pid for imap-filt => 106397 RUN: Process with pid 102147 signalled to die RUN: Process with pid 104078 signalled to die RUN: Process with pid 108686 signalled to die RUN: Process with pid 111229 signalled to die RUN: Process with pid 123934 signalled to die RUN: Process with pid 134078 signalled to die RUN: Process with pid 135354 signalled to die RUN: Process with pid 140644 signalled to die RUN: Process with pid 75081 signalled to die RUN: Process with pid 144738 signalled to die RUN: Process with pid 80127 signalled to die RUN: Process with pid 87719 signalled to die * kill pid for pop3-filt => 108688 RUN: Process with pid 75078 signalled to die RUN: Process with pid 89521 signalled to die RUN: Process with pid 80136 signalled to die RUN: Process with pid 100289 signalled to die RUN: Process with pid 87771 signalled to die RUN: Process with pid 104252 signalled to die RUN: Process with pid 100175 signalled to die RUN: Process with pid 106288 signalled to die RUN: Process with pid 102151 signalled to die RUN: Process with pid 108702 signalled to die RUN: Process with pid 104029 signalled to die RUN: Process with pid 111063 signalled to die RUN: Process with pid 106289 signalled to die RUN: Process with pid 117719 signalled to die RUN: Process with pid 108700 signalled to die RUN: Process with pid 123876 signalled to die RUN: Process with pid 123880 signalled to die RUN: Process with pid 127401 signalled to die * kill pid for smtp-filt => 111272 RUN: Process with pid 129106 signalled to die * kill pid for ftp-ctrl => 80140 RUN: Process with pid 75077 signalled to die RUN: Process with pid 80135 signalled to die RUN: Process with pid 87085 signalled to die RUN: Process with pid 104082 signalled to die RUN: Process with pid 106394 signalled to die * kill pid for imap-filt => 102512 RUN: Process with pid 108684 signalled to die * kill pid for imap-filt => 107138 RUN: Process with pid 111270 signalled to die RUN: Process with pid 117407 signalled to die RUN: Process with pid 123937 signalled to die RUN: Process with pid 126262 signalled to die RUN: Process with pid 128363 signalled to die RUN: Process with pid 144343 signalled to die * kill pid for pop3-filt => 108695 * kill pid for pop3-filt => 108681 * kill pid for smtp-filt => 111050 * kill pid for smtp-filt => 102150 * kill pid for ftp-ctrl => 80028 RUN: Process with pid 75074 signalled to die RUN: Process with pid 79136 signalled to die RUN: Process with pid 79238 signalled to die RUN: Process with pid 80137 signalled to die RUN: Process with pid 80141 signalled to die * kill pid for imap-filt => 106848 RUN: Process with pid 89523 signalled to die RUN: Process with pid 87313 signalled to die RUN: Process with pid 100445 signalled to die RUN: Process with pid 89520 signalled to die RUN: Process with pid 102473 signalled to die RUN: Process with pid 100300 signalled to die RUN: Process with pid 104201 signalled to die RUN: Process with pid 102149 signalled to die RUN: Process with pid 108694 signalled to die RUN: Process with pid 104253 signalled to die RUN: Process with pid 111010 signalled to die RUN: Process with pid 107026 signalled to die RUN: Process with pid 123933 signalled to die RUN: Process with pid 108638 signalled to die RUN: Process with pid 132758 signalled to die RUN: Process with pid 123875 signalled to die RUN: Process with pid 137313 signalled to die RUN: Process with pid 132760 signalled to die RUN: Process with pid 144342 signalled to die RUN: Process with pid 134124 signalled to die * kill pid for pop3-filt => 108699 * kill pid for smtp-filt => 111306 RUN: Process with pid 75080 signalled to die RUN: Process with pid 79910 signalled to die RUN: Process with pid 89522 signalled to die RUN: Process with pid 104178 signalled to die RUN: Process with pid 106831 signalled to die RUN: Process with pid 108698 signalled to die RUN: Process with pid 111274 signalled to die RUN: Process with pid 123921 signalled to die RUN: Process with pid 128366 signalled to die * kill pid for ftp-ctrl => 125478 * kill pid for smtp-filt => 102251 * kill pid for ftp-ipv6-ctrl => 87769 RUN: Process with pid 75082 signalled to die * kill pid for imap-filt => 106395 RUN: Process with pid 92038 signalled to die RUN: Process with pid 97147 signalled to die RUN: Process with pid 102207 signalled to die RUN: Process with pid 103557 signalled to die RUN: Process with pid 104304 signalled to die RUN: Process with pid 108685 signalled to die RUN: Process with pid 117406 signalled to die RUN: Process with pid 123782 signalled to die RUN: Process with pid 131697 signalled to die * kill pid for pop3-filt => 108682 * kill pid for smtp-filt => 111211 RUN: Process with pid 79837 signalled to die RUN: Process with pid 87768 signalled to die RUN: Process with pid 100285 signalled to die RUN: Process with pid 104030 signalled to die RUN: Process with pid 106359 signalled to die RUN: Process with pid 108651 signalled to die RUN: Process with pid 111193 signalled to die RUN: Process with pid 115544 signalled to die RUN: Process with pid 123938 signalled to die RUN: Process with pid 125406 signalled to die RUN: Process with pid 133614 signalled to die RUN: Process with pid 139345 signalled to die RUN: Process with pid 143408 signalled to die * kill pid for imap-filt => 106361 * kill pid for pop3-filt => 108676 * kill pid for smtp-filt => 102146 RUN: Process with pid 75076 signalled to die RUN: Process with pid 80056 signalled to die RUN: Process with pid 87096 signalled to die RUN: Process with pid 88877 signalled to die RUN: Process with pid 100292 signalled to die RUN: Process with pid 102145 signalled to die RUN: Process with pid 104183 signalled to die RUN: Process with pid 106302 signalled to die RUN: Process with pid 108636 signalled to die RUN: Process with pid 123773 signalled to die RUN: Process with pid 124324 signalled to die RUN: Process with pid 139144 signalled to die RUN: Process with pid 75082 forced to die with SIGKILL RUN: Process with pid 80128 forced to die with SIGKILL RUN: Process with pid 75079 forced to die with SIGKILL RUN: Process with pid 104251 forced to die with SIGKILL RUN: Process with pid 92038 forced to die with SIGKILL RUN: Process with pid 79905 forced to die with SIGKILL RUN: Process with pid 106286 forced to die with SIGKILL RUN: Process with pid 97147 forced to die with SIGKILL RUN: Process with pid 87770 forced to die with SIGKILL RUN: Process with pid 108696 forced to die with SIGKILL RUN: Process with pid 102207 forced to die with SIGKILL RUN: Process with pid 102147 forced to die with SIGKILL RUN: Process with pid 111007 forced to die with SIGKILL RUN: Process with pid 103557 forced to die with SIGKILL RUN: Process with pid 104078 forced to die with SIGKILL RUN: Process with pid 117409 forced to die with SIGKILL RUN: Process with pid 119016 forced to die with SIGKILL RUN: Process with pid 104304 forced to die with SIGKILL RUN: Process with pid 108686 forced to die with SIGKILL RUN: Process with pid 123873 forced to die with SIGKILL RUN: Process with pid 108685 forced to die with SIGKILL RUN: Process with pid 111229 forced to die with SIGKILL RUN: Process with pid 132591 forced to die with SIGKILL RUN: Process with pid 117406 forced to die with SIGKILL RUN: Process with pid 123934 forced to die with SIGKILL RUN: Process with pid 75081 forced to die with SIGKILL RUN: Process with pid 123782 forced to die with SIGKILL RUN: Process with pid 134078 forced to die with SIGKILL RUN: Process with pid 131697 forced to die with SIGKILL RUN: Process with pid 80127 forced to die with SIGKILL RUN: Process with pid 135354 forced to die with SIGKILL RUN: Process with pid 87719 forced to die with SIGKILL RUN: Process with pid 140644 forced to die with SIGKILL RUN: Process with pid 144738 forced to die with SIGKILL RUN: Process with pid 75077 forced to die with SIGKILL RUN: Process with pid 89521 forced to die with SIGKILL RUN: Process with pid 100289 forced to die with SIGKILL RUN: Process with pid 104252 forced to die with SIGKILL RUN: Process with pid 80135 forced to die with SIGKILL RUN: Process with pid 106288 forced to die with SIGKILL RUN: Process with pid 108702 forced to die with SIGKILL RUN: Process with pid 87085 forced to die with SIGKILL RUN: Process with pid 75084 forced to die with SIGKILL RUN: Process with pid 75078 forced to die with SIGKILL RUN: Process with pid 75074 forced to die with SIGKILL RUN: Process with pid 111063 forced to die with SIGKILL RUN: Process with pid 104082 forced to die with SIGKILL RUN: Process with pid 91086 forced to die with SIGKILL RUN: Process with pid 80136 forced to die with SIGKILL RUN: Process with pid 100291 forced to die with SIGKILL RUN: Process with pid 104177 forced to die with SIGKILL RUN: Process with pid 117719 forced to die with SIGKILL RUN: Process with pid 75080 forced to die with SIGKILL RUN: Process with pid 106394 forced to die with SIGKILL RUN: Process with pid 79238 forced to die with SIGKILL RUN: Process with pid 87771 forced to die with SIGKILL RUN: Process with pid 104793 forced to die with SIGKILL RUN: Process with pid 80141 forced to die with SIGKILL RUN: Process with pid 108684 forced to die with SIGKILL RUN: Process with pid 123876 forced to die with SIGKILL RUN: Process with pid 79910 forced to die with SIGKILL RUN: Process with pid 100175 forced to die with SIGKILL RUN: Process with pid 102151 forced to die with SIGKILL RUN: Process with pid 106279 forced to die with SIGKILL RUN: Process with pid 111270 forced to die with SIGKILL RUN: Process with pid 87313 forced to die with SIGKILL RUN: Process with pid 89522 forced to die with SIGKILL RUN: Process with pid 104178 forced to die with SIGKILL RUN: Process with pid 108687 forced to die with SIGKILL RUN: Process with pid 104029 forced to die with SIGKILL RUN: Process with pid 117407 forced to die with SIGKILL RUN: Process with pid 89520 forced to die with SIGKILL RUN: Process with pid 100300 forced to die with SIGKILL RUN: Process with pid 102149 forced to die with SIGKILL RUN: Process with pid 106831 forced to die with SIGKILL RUN: Process with pid 106289 forced to die with SIGKILL RUN: Process with pid 111216 forced to die with SIGKILL RUN: Process with pid 123937 forced to die with SIGKILL RUN: Process with pid 104253 forced to die with SIGKILL RUN: Process with pid 108698 forced to die with SIGKILL RUN: Process with pid 108700 forced to die with SIGKILL RUN: Process with pid 117356 forced to die with SIGKILL RUN: Process with pid 126262 forced to die with SIGKILL RUN: Process with pid 128363 forced to die with SIGKILL RUN: Process with pid 107026 forced to die with SIGKILL RUN: Process with pid 111274 forced to die with SIGKILL RUN: Process with pid 123880 forced to die with SIGKILL RUN: Process with pid 123879 forced to die with SIGKILL RUN: Process with pid 144343 forced to die with SIGKILL RUN: Process with pid 108638 forced to die with SIGKILL RUN: Process with pid 127401 forced to die with SIGKILL RUN: Process with pid 123921 forced to die with SIGKILL RUN: Process with pid 138442 forced to die with SIGKILL RUN: Process with pid 123875 forced to die with SIGKILL RUN: Process with pid 129106 forced to die with SIGKILL RUN: Process with pid 128366 forced to die with SIGKILL RUN: Process with pid 132760 forced to die with SIGKILL RUN: Process with pid 134124 forced to die with SIGKILL RUN: Process with pid 79136 forced to die with SIGKILL RUN: Process with pid 80137 forced to die with SIGKILL RUN: Process with pid 89523 forced to die with SIGKILL RUN: Process with pid 100445 forced to die with SIGKILL RUN: Process with pid 102473 forced to die with SIGKILL RUN: Process with pid 104201 forced to die with SIGKILL RUN: Process with pid 79837 forced to die with SIGKILL RUN: Process with pid 108694 forced to die with SIGKILL RUN: Process with pid 87768 forced to die with SIGKILL RUN: Process with pid 111010 forced to die with SIGKILL RUN: Process with pid 100285 forced to die with SIGKILL RUN: Process with pid 104030 forced to die with SIGKILL RUN: Process with pid 123933 forced to die with SIGKILL RUN: Process with pid 106359 forced to die with SIGKILL RUN: Process with pid 132758 forced to die with SIGKILL RUN: Process with pid 108651 forced to die with SIGKILL RUN: Process with pid 137313 forced to die with SIGKILL RUN: Process with pid 111193 forced to die with SIGKILL RUN: Process with pid 144342 forced to die with SIGKILL RUN: Process with pid 115544 forced to die with SIGKILL RUN: Process with pid 123938 forced to die with SIGKILL RUN: Process with pid 125406 forced to die with SIGKILL RUN: Process with pid 133614 forced to die with SIGKILL RUN: Process with pid 139345 forced to die with SIGKILL RUN: Process with pid 143408 forced to die with SIGKILL RUN: Process with pid 75076 forced to die with SIGKILL RUN: Process with pid 80056 forced to die with SIGKILL RUN: Process with pid 87096 forced to die with SIGKILL RUN: Process with pid 88877 forced to die with SIGKILL RUN: Process with pid 100292 forced to die with SIGKILL RUN: Process with pid 102145 forced to die with SIGKILL RUN: Process with pid 104183 forced to die with SIGKILL RUN: Process with pid 106302 forced to die with SIGKILL RUN: Process with pid 108636 forced to die with SIGKILL RUN: Process with pid 123773 forced to die with SIGKILL RUN: Process with pid 124324 forced to die with SIGKILL RUN: Process with pid 139144 forced to die with SIGKILL ==145218== by 0x496C9A2: add_alias (gconv_conf.c:178) ==145218== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==145218== by 0x496CB0F: gconv_parseconfdir (gconv_parseconfdir.h:139) ==145218== by 0x496CB0F: __gconv_read_conf (gconv_conf.c:480) ==145218== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==145218== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==145218== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==145218== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==145218== by 0x497836B: setlocale (setlocale.c:337) ==145218== by 0x10904B: main (first.c:157) ==145218== ==145218== 1,018 bytes in 23 blocks are possibly lost in loss record 625 of 650 ==145218== at 0x4842788: malloc (vg_replace_malloc.c:446) ==145218== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==145218== by 0x496CD13: add_alias2 (gconv_conf.c:105) ==145218== by 0x496CD13: __gconv_read_conf (gconv_conf.c:508) ==145218== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==145218== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==145218== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==145218== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==145218== by 0x497836B: setlocale (setlocale.c:337) ==145218== by 0x10904B: main (first.c:157) ==145218== ==145218== 5,288 bytes in 1 blocks are definitely lost in loss record 644 of 650 ==145218== at 0x4849BF3: calloc (vg_replace_malloc.c:1675) ==145218== by 0x48DC163: Curl_open (url.c:510) ==145218== by 0x487CCEF: curl_easy_init (easy.c:368) ==145218== by 0x10908E: UnknownInlinedFun (lib3100.c:37) ==145218== by 0x10908E: main (first.c:178) ==145218== ==145218== 11,664 bytes in 486 blocks are possibly lost in loss record 647 of 650 ==145218== at 0x4842788: malloc (vg_replace_malloc.c:446) ==145218== by 0x4A58EC8: __tsearch (tsearch.c:337) ==145218== by 0x4A58EC8: tsearch (tsearch.c:290) ==145218== by 0x496C6B7: add_alias2.part.0 (gconv_conf.c:142) ==145218== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==145218== by 0x496C9A2: add_alias (gconv_conf.c:178) ==145218== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==145218== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==145218== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==145218== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==145218== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==145218== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==145218== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==145218== by 0x497836B: setlocale (setlocale.c:337) ==145218== by 0x10904B: main (first.c:157) ==145218== ==145218== 18,800 bytes in 486 blocks are possibly lost in loss record 649 of 650 ==145218== at 0x4842788: malloc (vg_replace_malloc.c:446) ==145218== by 0x496C669: add_alias2.part.0 (gconv_conf.c:132) ==145218== by 0x496C9A2: add_alias2 (gconv_conf.c:176) ==145218== by 0x496C9A2: add_alias (gconv_conf.c:178) ==145218== by 0x496C9A2: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==145218== by 0x496CD49: gconv_parseconfdir (gconv_parseconfdir.h:170) ==145218== by 0x496CD49: __gconv_read_conf (gconv_conf.c:480) ==145218== by 0x49DC34A: __pthread_once_slow.isra.0 (pthread_once.c:116) ==145218== by 0x49DC3C8: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==145218== by 0x496B88C: __gconv_compare_alias (gconv_db.c:692) ==145218== by 0x4975ABD: _nl_find_locale (findlocale.c:291) ==145218== by 0x497836B: setlocale (setlocale.c:337) ==145218== by 0x10904B: main (first.c:157) ==145218== === End of file valgrind3100 startnew: perl -I/startdir/src/curl/tests /startdir/src/curl/tests/http3-server.pl --port 41065 --nghttpx "nghttpx" --pidfile "log/2/server/http_v3_server.pid" --logfile "log/2/http_v3_server.log" --logdir "log/2" --connect 127.0.0.1:44205 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 http-proxy => 128366 * kill pid for ftp => 79910 * kill pid for tftp => 89522 * kill pid for smtp => 111274 * kill pid for socks => 104178 * kill pid for imap => 106831 * kill pid for mqtt => 123921 * kill pid for pop3 => 108698 * kill pid for http => 75080 * kill pid for rtsp => 100445 * kill pid for gopher => 123933 * kill pid for pop3 => 108694 * kill pid for socks => 104201 * kill pid for imap => 102473 * kill pid for smtp => 111010 * kill pid for tftp => 89523 * kill pid for http-unix => 132758 * kill pid for ftp => 80137 * kill pid for http-proxy => 79136 * kill pid for http => 137313 * kill pid for mqtt => 144342 * kill pid for http => 75079 * kill pid for mqtt => 123934 * kill pid for http-proxy => 135354 * kill pid for ftp => 79905 * kill pid for tftp => 140644 * kill pid for smtp => 111229 * kill pid for imap => 102147 * kill pid for socks => 104078 * kill pid for socks5unix => 134078 * kill pid for pop3 => 108686 * kill pid for ftp-ipv6 => 87770 * kill pid for rtsp => 144738 * kill pid for pop3 => 108638 * kill pid for imap => 107026 * kill pid for socks => 104253 * kill pid for socks5unix => 134124 * kill pid for http-ipv6 => 87313 * kill pid for rtsp => 100300 * kill pid for mqtt => 123875 * kill pid for http => 75074 * kill pid for smtp => 102149 * kill pid for tftp => 89520 * kill pid for http-unix => 132760 * kill pid for ftp => 80141 * kill pid for http-proxy => 79238 * kill pid for rtsp => 100292 * kill pid for gopher-ipv6 => 124324 * kill pid for imap => 106302 * kill pid for socks => 104183 * kill pid for http-ipv6 => 87096 * kill pid for pop3 => 108636 * kill pid for http-proxy => 139144 * kill pid for ftp => 80056 * kill pid for tftp => 88877 * kill pid for smtp => 102145 * kill pid for mqtt => 123773 * kill pid for http => 75076 * kill pid for ftp => 80127 * kill pid for smtp => 111063 * kill pid for tftp => 89521 * kill pid for mqtt => 123876 * kill pid for http => 75081 * kill pid for rtsp => 100289 * kill pid for pop3 => 108702 * kill pid for imap => 106288 * kill pid for socks => 104252 * kill pid for http-ipv6 => 117719 * kill pid for ftp-ipv6 => 87719 * kill pid for ftp-ipv6 => 117406 * kill pid for imap => 103557 * kill pid for socks => 104304 * kill pid for http-ipv6 => 131697 * kill pid for mqtt => 123782 * kill pid for http => 75082 * kill pid for pop3 => 108685 * kill pid for smtp => 102207 * kill pid for http-proxy => 97147 * kill pid for ftp => 92038 * kill pid for http-ipv6 => 127401 * kill pid for imap => 106289 * kill pid for socks => 104029 * kill pid for mqtt => 123880 * kill pid for pop3 => 108700 * kill pid for http => 75078 * kill pid for ftp-ipv6 => 87771 * kill pid for http-proxy => 129106 * kill pid for ftp => 80136 * kill pid for smtp => 102151 * kill pid for rtsp => 100175 * kill pid for pop3 => 108696 * kill pid for http => 132591 * kill pid for mqtt => 123873 * kill pid for imap => 106286 * kill pid for socks => 104251 * kill pid for smtp => 111007 * kill pid for tftp => 117409 * kill pid for ftp => 80128 * kill pid for http-proxy => 119016 * kill pid for gopher => 123937 * kill pid for ftp-ipv6 => 117407 * kill pid for pop3 => 108684 * kill pid for imap => 106394 * kill pid for socks => 104082 * kill pid for http-ipv6 => 87085 * kill pid for smtp => 111270 * kill pid for tftp => 126262 * kill pid for ftp => 80135 * kill pid for http-proxy => 128363 * kill pid for http => 75077 * kill pid for mqtt => 144343 * kill pid for rtsp => 100285 * kill pid for gopher => 123938 * kill pid for ftp-ipv6 => 87768 * kill pid for imap => 106359 * kill pid for socks => 104030 * kill pid for http-ipv6 => 133614 * kill pid for pop3 => 108651 * kill pid for tftp => 115544 * kill pid for smtp => 111193 * kill pid for http-proxy => 79837 * kill pid for ftp => 125406 * kill pid for mqtt => 143408 * kill pid for http => 139345 * kill pid for rtsp => 100291 * kill pid for imap => 106279 * kill pid for socks => 104177 * kill pid for http-ipv6 => 117356 * kill pid for pop3 =Runner 75064 exiting Runner 75063 exiting Runner 75067 exiting Runner 75069 exiting Runner 75072 exiting Runner 75068 exiting Runner 75062 exiting Runner 75070 exiting Runner 75066 exiting Runner 75065 exiting Runner 75071 exiting Runner 75061 exiting > 108687 * kill pid for http-proxy => 104793 * kill pid for ftp => 138442 * kill pid for tftp => 91086 * kill pid for smtp => 111216 * kill pid for mqtt => 123879 * kill pid for http => 75084 TESTDONE: 1700 tests were considered during 115 seconds. TESTINFO: 317 tests were skipped due to these restraints: TESTINFO: "curl lacks debug support" 99 times (159, 356, 358, 359, 363, 412, 413, 437, 438 and 90 more) TESTINFO: "no stunnel" 53 times (300, 301, 302, 303, 304, 305, 306, 307, 308 and 44 more) TESTINFO: "failed starting SSH server" 52 times (582, 583, 600, 601, 602, 603, 604, 605, 606 and 43 more) TESTINFO: "curl lacks unittest support" 49 times (1300, 1302, 1303, 1304, 1305, 1306, 1308, 1309, 1323 and 40 more) TESTINFO: "configured as DISABLED" 17 times (323, 433, 594, 836, 882, 938, 1182, 1184, 1209 and 8 more) TESTINFO: "got unexpected host name back, LD_PRELOAD failed" 10 times (831, 834, 877, 880, 933, 936, 2023, 2024, 2026 and 1 more) 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: "curl has idn support" 3 times (959, 960, 961) TESTINFO: "curl lacks TrackMemory support" 2 times (96, 558) TESTINFO: "curl lacks nghttpx-h3 support" 2 times (2500, 2503) TESTINFO: "curl lacks ldap support" 2 times (445, 1560) TESTINFO: "curl lacks manual support" 2 times (1026, 1179) TESTINFO: "failed starting HTTP/3 server" 1 time (2502) TESTINFO: "curl lacks NTLM_WB support" 1 time (1310) TESTINFO: "failed starting SMB server" 1 time (1451) TESTINFO: "curl lacks Unicode support" 1 time (1703) 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: "failed starting DICT server" 1 time (1450) TESTINFO: "failed starting neg TELNET server" 1 time (1452) IGNORED: failed tests: 573 587 1113 1162 1163 1086 1208 2032 TESTDONE: 29 tests out of 1383 reported OK: 2% TESTFAIL: These test cases failed: 2 4 5 14 13 11 3 9 1 15 7 16 17 18 6 20 19 8 10 21 12 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 38 37 39 40 41 42 43 44 45 47 46 48 49 50 54 51 53 52 55 56 57 60 59 58 61 62 63 66 65 64 68 67 69 71 70 72 74 73 75 76 78 77 79 81 82 84 85 86 87 90 89 88 92 91 93 94 97 98 99 80 83 95 100 102 101 103 104 105 106 113 109 107 114 115 112 108 110 117 116 118 122 120 123 124 119 121 125 127 128 126 111 129 130 132 136 135 131 134 133 137 139 138 140 141 142 143 144 145 148 146 147 149 151 150 152 153 154 155 156 158 161 157 160 164 162 163 165 166 167 168 171 169 172 170 173 175 174 176 177 178 180 179 181 185 184 182 183 188 186 187 189 191 192 195 193 197 194 196 200 198 199 201 202 203 204 205 207 206 208 209 210 211 212 214 213 216 215 218 219 217 220 222 221 223 224 227 229 226 230 228 225 231 233 232 234 236 237 238 235 239 244 243 245 246 247 249 250 248 251 257 256 258 240 241 259 242 260 261 262 263 264 265 266 252 267 269 270 253 268 254 255 272 273 274 275 279 276 278 277 280 282 281 190 287 289 288 290 292 271 291 293 294 295 296 297 298 299 314 315 284 283 316 317 286 319 318 285 327 326 328 329 330 331 333 338 335 336 334 340 337 339 341 342 343 344 346 348 347 350 345 351 349 353 354 332 355 361 367 360 365 362 357 366 368 369 370 371 380 374 372 373 376 379 378 352 383 381 384 385 387 389 386 388 390 391 393 392 394 395 396 397 405 398 399 402 411 416 415 418 419 420 421 422 423 425 424 426 427 428 429 430 432 431 434 435 436 441 443 442 440 448 444 449 450 451 452 453 454 455 456 457 458 460 459 461 462 463 469 467 468 470 491 471 492 490 493 494 495 496 497 498 499 509 510 505 511 512 508 504 502 515 516 503 501 514 513 520 507 519 521 522 523 527 524 526 525 528 530 529 531 533 532 534 535 536 538 539 537 540 541 542 543 544 545 546 549 548 547 500 550 552 551 553 557 555 556 554 559 561 562 563 565 566 574 575 576 564 567 578 579 580 568 569 570 571 581 572 577 584 585 586 588 589 590 591 592 593 595 596 597 598 599 632 643 645 651 650 653 655 654 646 648 649 658 647 659 663 662 669 661 666 652 667 668 670 671 675 672 673 660 679 680 674 681 682 684 685 683 676 686 704 705 689 677 701 706 700 707 703 708 702 714 709 711 710 716 723 721 712 718 713 720 719 722 717 726 730 733 727 732 734 728 729 715 724 735 725 736 739 737 738 742 731 803 805 808 809 810 740 811 741 812 799 813 800 801 802 804 806 815 817 807 819 818 820 821 822 825 824 826 827 828 830 829 833 814 837 838 840 816 839 843 842 841 844 845 846 847 848 849 851 852 850 854 855 856 853 857 858 859 860 861 863 864 862 865 867 868 866 871 870 872 873 874 879 875 876 883 884 886 885 889 887 888 890 891 894 892 893 895 896 897 898 899 902 905 904 908 913 914 915 916 917 919 918 901 900 903 906 920 909 910 911 921 923 922 924 925 912 926 927 928 929 930 931 935 932 939 940 942 941 943 944 945 946 947 948 950 949 951 952 953 954 955 956 957 958 962 964 965 963 966 967 969 968 974 973 976 975 977 978 979 980 981 982 983 984 985 986 990 992 991 1001 1000 1002 1003 1006 1005 1007 1008 1010 1011 1015 1012 1016 1013 1014 1017 1018 1019 1020 1025 1021 1029 1024 1027 1028 1023 1022 1030 1031 1009 1032 1033 1034 1038 1039 1035 1036 1037 1040 1041 1042 1043 1044 1051 1045 1052 1047 1053 1054 1055 1057 1059 1063 1058 1060 1062 1061 1064 1046 1065 1066 1067 1068 1069 1049 1050 1070 1048 1056 1072 1073 1075 1074 1071 1076 1077 1079 1081 1080 1082 1083 1084 1085 1087 1092 1088 1091 1089 1090 1093 1094 1078 1095 1096 1099 1103 1098 1102 1104 1101 1105 1106 1108 1107 1109 1115 1110 1116 1111 1117 1118 1120 1114 1121 1125 1126 1122 1123 1124 1127 1128 1130 1129 1131 1137 1133 1138 1136 1134 1141 1142 1143 1144 1145 1146 1148 1150 1149 1147 1151 1152 1153 1155 1154 1157 1160 1158 1159 1161 1164 1156 1166 1168 1172 1171 1170 1174 1176 1178 1180 1181 1186 1183 1187 1188 1189 1197 1190 1191 1192 1193 1194 1195 1196 1198 1204 1199 1205 1200 1207 1206 1201 1212 1213 1202 1214 1215 1217 1216 1219 1218 1220 1223 1221 1203 1225 1227 1226 1228 1229 1231 1230 1232 1233 1234 1235 1237 1236 1239 1240 1241 1242 1245 1246 1224 1247 1248 1249 1253 1252 1250 1251 1254 1255 1256 1259 1257 1258 1261 1260 1263 1262 1243 1264 1266 1268 1269 1267 1271 1270 1274 1277 1278 1280 1282 1283 1281 1284 1285 1286 1265 1289 1290 1293 1296 1292 1291 1297 1298 1299 1314 1315 1318 1317 1319 1288 1287 1321 1324 1322 1326 1327 1325 1328 1329 1331 1364 1332 1333 1367 1366 1368 1365 1320 1369 1370 1375 1371 1373 1376 1377 1372 1374 1378 1379 1380 1387 1382 1386 1384 1385 1381 1383 1388 1389 1390 1402 1391 1393 1400 1403 1401 1392 1238 1404 1405 1406 1411 1412 1407 1414 1410 1413 1409 1415 1273 1416 1417 1420 1418 1421 1423 1424 1427 1419 1428 1430 1431 1408 1439 1434 1437 1432 1433 1438 1440 1441 1442 1444 1447 1445 1449 1448 1429 1453 1455 1435 1458 1457 1436 1462 1461 1463 1464 1466 1465 1469 1471 1472 1474 1473 1476 1456 1479 1482 1480 1481 1483 1467 1468 1500 1506 1504 1502 1503 1505 1507 1508 1511 1513 1514 1515 1516 1517 1518 1519 1521 1520 1509 1522 1524 1525 1526 1527 1528 1529 1531 1530 1533 1532 1534 1535 1536 1539 1540 1475 1541 1542 1543 1545 1550 1551 1552 1553 1554 1563 1556 1557 1501 1558 1559 1564 1566 1565 1567 1568 1569 1570 1590 1555 1591 1593 1594 1595 1613 1633 1596 1634 1670 1635 1598 1597 1680 1671 1681 1682 1683 1704 1800 1523 1900 1906 1901 1903 1905 1907 1911 1910 1913 1914 1904 1915 1916 1909 1919 1940 1917 1941 1942 1944 1943 1946 1945 1948 1947 1960 2001 1964 2000 2002 2036 2025 2029 2028 2030 2039 2031 2040 2044 2046 2045 2047 2049 2003 2050 2051 2053 2052 2055 2054 2056 2057 2058 2061 2060 2059 2063 2062 2065 2064 2066 2067 2068 2072 2069 2071 2073 2074 2075 2076 2078 2077 2080 2081 2200 2201 2202 2082 2203 2204 2084 2083 2085 3003 3002 2306 2308 3004 3005 3006 3007 3008 3009 3011 3012 2205 3015 3014 3013 3016 3019 3010 3020 3029 3028 3026 3030 3025 3027 3202 3201 3101 3018 3203 3017 3204 3103 3100 make[1]: *** [Makefile:886: nonflaky-test] Error 1 make[1]: Leaving directory '/startdir/src/build-curl/tests' make: *** [Makefile:1684: test-nonflaky] Error 2 ==> ERROR: A failure occurred in check(). Aborting... ==> ERROR: Build failed, check /home/alhp/workspace/chroot/build_9f62918d-4d96-48c7-b618-cd1bba5d0f80/build